안녕하세요.
뒤늦은 질문일지도 모르지만 일단 질문드려봅니다 ㅜ
1) TestOrders에 NONCLUSTERED INDEX를 하나 만들고
CustomerID = 'QUICK';를 검색할때
하나의 Leaf Page에 QUICK들이 모두 모여있어서 한 페이지만 찾으면되는데, 그렇다고 해도 28개의 QUICK을 찾으려면 최소한 28번은 읽어야 하는게 아닌가요?
오히려 WITH(INDEX(Orders_Index01))를 사용한 경우는 SEEK으로 'QUICK'모음을 찾고 그걸 하나씩 검사하기 때문에 논리적읽기가 30인건 어느정도 이해하겠는데
SCAN으로 한 경우는 왜 20일까요?
2) 예를들어 100개의 데이터중 A라는 데이터가 5개 있고 name으로 검색 가능하다고 했을때
C#의 리스트에서 검색을 할때는 A가 몇개인지는 결국 100개를 다 돌려봐야 하는데 (INDEX를 사용하지 않은)SQL에서는 왜 논리적읽기가 100이 아닌가요?
전체를 순회하는건 스캔1에 포함이 되는건가요?