2017-04-22 6 views
1

내가 사전에 DocumentDB대 문서 DB의 OR 대 비교는 어느 조건에서 더 빠르고 더 빠릅니까?

SELECT * FROM m where m.gender=1 
and m.langPref in ('English','hindhi','telugu','french','Albanian','Croatian','latin') 


SELECT * FROM m where m.gender=1 
and m.langPref='English' or m.langPref='hindhi' or m.langPref='telugu' or m.langPref='french' or m.langPref='Albanian' or m.langPref='Croatian' or m.langPref='latin') 

덕분에 거대한 컬렉션을 검색하고 때 나는 두 개의 SELECT 문 하나가 상태와 다른 또는 최고의 줄 것 하나 상태 함께 있습니다! !

+2

둘 다 시도해 보았습니까? 각각에 대한 RU 비용을 확인 했습니까? 꽤 쉬워야합니다 (RU 비용은 결과 헤더에 있습니다). –

답변

1

소수의 연산자의 경우 어느 쪽이든 상관 없습니다.

쿼리 최적화 프로그램에 대한 작업이 적기 때문에 많은 수의 연산자를 사용하면 IN이 DocumentDB (및 대부분의 데이터베이스)에서 OR보다 확실히 좋습니다.

다른 사람들이 제안한 것처럼 RU를 측정하여 하나가 다른 것보다 좋고 얼마가되는지 알 수 있습니다.