DocumentDB的IN与OR在哪里条件更好,更快?

时间:2017-04-22 05:34:55

标签: azure azure-cosmosdb or-operator in-operator nosql

我有两个选择语句,一个是 条件,另一个是条件,当我在DocumentDB中的一个巨大的集合中搜索时,哪一个会给出最好的/ p>

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')

提前致谢!!!

1 个答案:

答案 0 :(得分:1)

对于少数运营商而言,无论哪种方式都无关紧要。

对于大量的运算符,IN肯定比DocumentDB(和大多数数据库)中的OR更好,因为查询优化器的工作量较少。

像其他人建议的那样,您可以测量RU以判断一个是否优于另一个以及多少。