0
說我有一個DocumentDB集合這3個文件:DocumentDB:SQL來選擇可選元素匹配
[
{
"name": "tiger",
"keywords": [
"animal",
"cat",
"stripes"
]
},
{
"name": "cat"
},
{
"keywords": [
"panther",
"black"
]
}
]
我將如何構建一個SQL查詢返回在「名稱」匹配所有文件「貓「關鍵字」和「名稱」是文檔中的可選元素時,「OR關鍵字」是否與「貓」匹配?
的偉大工程。你知道如何修改查詢,使ARRAY_CONTAINS與CONTAINS一樣匹配部分字符串嗎?目前ARRAY_CONTAINS必須完全匹配字符串。例如,字符串「ca」:SELECT * FROM root r WHERE CONTAINS(r.name,'ca')OR ARRAY_CONTAINS(r.keywords,'ca') – Projectitis
ARRAY_CONTAINS執行嚴格的等式比較,陣列。請注意,搜索項可以是任何類型。 這裏的另一種方法是做 SELECT值R 從底部R 加盟K的r.keywords WHERE CONTAINS(r.name, 'CA'),或包含(K, 'CA') 請保持在請注意,JOIN將使關鍵字數組變平,並且結果集是輸入文檔與數組中每個項目的叉積。 例如,由於r.name滿足兩個數組項的條件,所以此查詢將返回第二個文檔兩次。 –