DocumentDB SQL - Toán tử

Toán tử là một từ dành riêng hoặc một ký tự được sử dụng chủ yếu trong mệnh đề WHERE của SQL để thực hiện (các) hoạt động, chẳng hạn như so sánh và các phép toán số học. DocumentDB SQL cũng hỗ trợ nhiều loại biểu thức vô hướng. Thường được sử dụng nhất làbinary and unary expressions.

Các toán tử SQL sau hiện được hỗ trợ và có thể được sử dụng trong các truy vấn.

Toán tử so sánh SQL

Sau đây là danh sách tất cả các toán tử so sánh có sẵn trong ngữ pháp SQL DocumentDB.

Không. Nhà khai thác & Mô tả
1

=

Kiểm tra xem giá trị của hai toán hạng có bằng nhau hay không. Nếu có, thì điều kiện trở thành true.

2

!=

Kiểm tra xem giá trị của hai toán hạng có bằng nhau hay không. Nếu các giá trị không bằng nhau thì điều kiện trở thành true.

3

<>

Kiểm tra xem giá trị của hai toán hạng có bằng nhau hay không. Nếu các giá trị không bằng nhau thì điều kiện trở thành true.

4

>

Kiểm tra xem giá trị của toán hạng bên trái có lớn hơn giá trị của toán hạng bên phải hay không. Nếu có, thì điều kiện trở thành true.

5

<

Kiểm tra xem giá trị của toán hạng bên trái có nhỏ hơn giá trị của toán hạng bên phải hay không. Nếu có, thì điều kiện trở thành true.

6

>=

Kiểm tra xem giá trị của toán hạng bên trái có lớn hơn hoặc bằng giá trị của toán hạng bên phải hay không. Nếu có, thì điều kiện trở thành true.

7

<=

Kiểm tra nếu giá trị của toán hạng bên trái nhỏ hơn hoặc bằng giá trị của toán hạng bên phải. Nếu có, thì điều kiện trở thành true.

Toán tử logic SQL

Sau đây là danh sách tất cả các toán tử logic có sẵn trong ngữ pháp SQL DocumentDB.

Không. Nhà khai thác & Mô tả
1

AND

Toán tử AND cho phép tồn tại nhiều điều kiện trong mệnh đề WHERE của câu lệnh SQL.

2

BETWEEN

Toán tử BETWEEN được sử dụng để tìm kiếm các giá trị nằm trong một tập giá trị, cho giá trị nhỏ nhất và giá trị lớn nhất.

3

IN

Toán tử IN được sử dụng để so sánh một giá trị với danh sách các giá trị theo nghĩa đen đã được chỉ định.

4

OR

Toán tử OR được sử dụng để kết hợp nhiều điều kiện trong mệnh đề WHERE của câu lệnh SQL.

5

NOT

Toán tử NOT đảo ngược ý nghĩa của toán tử logic mà nó được sử dụng. Ví dụ: KHÔNG TỒN TẠI, KHÔNG GIỮA, KHÔNG VÀO, v.v ... Đây là một toán tử phủ định.

Toán tử số học SQL

Sau đây là danh sách tất cả các toán tử số học có sẵn trong ngữ pháp SQL DocumentDB.

Không. Nhà khai thác & Mô tả
1

+

Addition - Thêm giá trị vào hai bên của toán tử.

2

-

Subtraction - Trừ toán hạng bên phải với toán hạng bên trái.

3

*

Multiplication - Nhân các giá trị ở hai bên của toán tử.

4

/

Division - Chia toán hạng bên trái cho toán hạng bên phải.

5

%

Modulus - Chia toán hạng bên trái cho toán hạng bên phải và trả về phần dư.

Chúng tôi cũng sẽ xem xét các tài liệu tương tự 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 đó toán tử so sánh được sử dụng trong mệnh đề WHERE.

Trong truy vấn này, trong mệnh đề WHERE, điều kiện (WHERE f.id = "WakefieldFamily") được chỉ định và nó sẽ truy xuất tài liệu có id bằng WakefieldFamily.

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/" 
   } 
]

Hãy xem một ví dụ khác, trong đó truy vấn sẽ truy xuất dữ liệu trẻ em có điểm lớn hơn 5.

SELECT * 
FROM Families.children[0] c 
WHERE (c.grade > 5)

Khi truy vấn trên được thực thi, nó sẽ truy xuất tài liệu con sau như được hiển thị trong đầu ra.

[
   {
      "familyName": "Merriam", 
      "givenName": "Jesse", 
      "gender": "female", 
      "grade": 6, 
		
      "pets": [
         { 
            "givenName": "Charlie Brown", 
            "type": "Dog" 
         }, 
			
         { 
            "givenName": "Tiger", 
            "type": "Cat" 
         }, 
			
         { 
            "givenName": "Princess", 
            "type": "Cat" 
         } 
      ] 
   } 
]