It's well known that Read Committed isolation is prone to different anomalies. I read a great Paul White's series on isolation levels (the one relevant to the discussion is this one: https://sqlperformance.com/2014/04/t-sql-queries/the-read-committed-isolation-level). It states (again, it's reasonably well known), that a statement running under locking read committed isolation:
Can encounter the same row multiple times; Can miss some rows completely;
My question is about the 'missing rows' part. Examples that talk about missing rows usually demonstrate the problem using queries like
select count(*) from table.
My question is can the rows be missed in a 'regular' select query? Meaning, can a query like
select * from table
select * from table where id = @id
also miss rows that are committed before the start of that query? This question applies to Read committed with locking (not RCSI) only, as RCSI doesn't allow these types of anomalies.