DocumentDB SQL - Mệnh đề Where
Trong chương này, chúng ta sẽ đề cập đến mệnh đề WHERE, cũng là tùy chọn giống như mệnh đề FROM. Nó được sử dụng để chỉ định một điều kiện trong khi tìm nạp dữ liệu ở dạng tài liệu JSON do nguồn cung cấp. Bất kỳ tài liệu JSON nào cũng phải đánh giá các điều kiện được chỉ định là "đúng" để được xem xét cho kết quả. Nếu điều kiện đã cho được thỏa mãn, thì chỉ khi đó nó mới trả về dữ liệu cụ thể ở dạng (các) tài liệu JSON. Chúng ta có thể sử dụng mệnh đề WHERE để lọc các bản ghi và chỉ tìm nạp các bản ghi cần thiết.
Chúng ta sẽ xem xét ba tài liệu giống nhau trong ví dụ này. Sau đây làAndersenFamily tài liệu.
{
"id": "AndersenFamily",
"lastName": "Andersen",
"parents": [
{ "firstName": "Thomas", "relationship": "father" },
{ "firstName": "Mary Kay", "relationship": "mother" }
],
"children": [
{
"firstName": "Henriette Thaulow",
"gender": "female",
"grade": 5,
"pets": [ { "givenName": "Fluffy", "type": "Rabbit" } ]
}
],
"location": { "state": "WA", "county": "King", "city": "Seattle" },
"isRegistered": true
}
Sau đây là SmithFamily tài liệu.
{
"id": "SmithFamily",
"parents": [
{ "familyName": "Smith", "givenName": "James" },
{ "familyName": "Curtis", "givenName": "Helen" }
],
"children": [
{
"givenName": "Michelle",
"gender": "female",
"grade": 1
},
{
"givenName": "John",
"gender": "male",
"grade": 7,
"pets": [
{ "givenName": "Tweetie", "type": "Bird" }
]
}
],
"location": {
"state": "NY",
"county": "Queens",
"city": "Forest Hills"
},
"isRegistered": true
}
Sau đây là WakefieldFamily tài liệu.
{
"id": "WakefieldFamily",
"parents": [
{ "familyName": "Wakefield", "givenName": "Robin" },
{ "familyName": "Miller", "givenName": "Ben" }
],
"children": [
{
"familyName": "Merriam",
"givenName": "Jesse",
"gender": "female",
"grade": 6,
"pets": [
{ "givenName": "Charlie Brown", "type": "Dog" },
{ "givenName": "Tiger", "type": "Cat" },
{ "givenName": "Princess", "type": "Cat" }
]
},
{
"familyName": "Miller",
"givenName": "Lisa",
"gender": "female",
"grade": 3,
"pets": [
{ "givenName": "Jake", "type": "Snake" }
]
}
],
"location": { "state": "NY", "county": "Manhattan", "city": "NY" },
"isRegistered": false
}
Hãy xem một ví dụ đơn giản trong đó mệnh đề WHERE được sử dụng.
Trong truy vấn này, trong mệnh đề WHERE, điều kiện (WHERE f.id = "WakefieldFamily") được chỉ định.
SELECT *
FROM f
WHERE f.id = "WakefieldFamily"
Khi truy vấn trên được thực thi, nó sẽ trả về tài liệu JSON hoàn chỉnh cho WakefieldFamily như được hiển thị trong kết quả sau.
[
{
"id": "WakefieldFamily",
"parents": [
{
"familyName": "Wakefield",
"givenName": "Robin"
},
{
"familyName": "Miller",
"givenName": "Ben"
}
],
"children": [
{
"familyName": "Merriam",
"givenName": "Jesse",
"gender": "female",
"grade": 6,
"pets": [
{
"givenName": "Charlie Brown",
"type": "Dog"
},
{
"givenName": "Tiger",
"type": "Cat"
},
{
"givenName": "Princess",
"type": "Cat"
}
]
},
{
"familyName": "Miller",
"givenName": "Lisa",
"gender": "female",
"grade": 3,
"pets": [
{
"givenName": "Jake",
"type": "Snake"
}
]
}
],
"location": {
"state": "NY",
"county": "Manhattan",
"city": "NY"
},
"isRegistered": false,
"_rid": "Ic8LAJFujgECAAAAAAAAAA==",
"_ts": 1450541623,
"_self": "dbs/Ic8LAA==/colls/Ic8LAJFujgE=/docs/Ic8LAJFujgECAAAAAAAAAA==/",
"_etag": "\"00000500-0000-0000-0000-567582370000\"",
"_attachments": "attachments/"
}
]