N1ql-> IN运算符不适用于其他条件 [英] N1ql -> IN operator does not work with other conditions
问题描述
仅使用IN运算符时,以下查询可以正常工作
SELECT META()。id FROM bucket_name WHERE description IN ['Item1','Item2']
The following query works just fine when only IN operator is used
SELECT META().id FROM bucket_name WHERE description IN ['Item1','Item2']
但是当我触发该查询时,它给我一个空白结果
SELECT META()。 id FROM bucket_name WHERE id = 123 AND description in ['Item1','Item2']
But when I fire this query it gives me a blank result
SELECT META().id FROM bucket_name WHERE id = 123 AND description IN ['Item1','Item2']
我做错了什么吗?遇到相同的问题?
Am I doing something wrong or somebody else has faced the same problem?
推荐答案
我认为您必须将 IN条件放在括号中才能起作用:
I think you have to take your "IN" condition into parenthesis to make it work:
SELECT META().id FROM bucket_name WHERE id = 123 AND (description IN ['Item1','Item2'])
如果使用< href = http://docs.couchbase.com/couchbase-query-language-0.1/#explain rel = noreferrer> EXPLAIN 关键字,它将显示它如何相互链接条件。
If you run it with EXPLAIN keyword it will show how it links conditions against each other.
例如
explain SELECT META().id FROM bucket_name WHERE id = 123 AND (description IN ['Item1','Item2'])
vs
explain SELECT META().id FROM bucket_name WHERE id = 123 AND description IN ['Item1','Item2']
这篇关于N1ql-> IN运算符不适用于其他条件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!