DocumentDB SQL – Declaraciones

Un operador es una palabra o carácter reservado que se utiliza principalmente en una cláusula WHERE de SQL para realizar operaciones como comparaciones y operaciones aritméticas. DocumentDB SQL también admite muchas expresiones escalares. Usado con más frecuencia expresiones binarias y unarias

Actualmente, se admiten las siguientes instrucciones SQL y se pueden utilizar en consultas.

Operadores de comparación SQL

A continuación se muestra una lista de todos los operadores de comparación disponibles en la gramática SQL de DocumentDB.

S.No. Operadores y descripción
uno

=

Comprueba si los valores de dos operandos son iguales. Si es así, entonces se cumple la condición.

2

=

Comprueba si los valores de dos operandos son iguales. Si los valores no son iguales, la condición se cumple.

3

<>

Comprueba si los valores de dos operandos son iguales. Si los valores no son iguales, la condición se cumple.

cuatro

>

Comprueba si el valor del operando izquierdo es mayor que el valor del operando derecho. Si es así, entonces se cumple la condición.

cinco

<

Comprueba si el valor del operando izquierdo es menor que el valor del operando derecho. Si es así, entonces se cumple la condición.

6

> =

Comprueba si el valor del operando izquierdo es mayor o igual que el valor del operando derecho. Si es así, entonces se cumple la condición.

7

<=

Comprueba si el valor del operando izquierdo es menor o igual que el valor del operando derecho. Si es así, entonces se cumple la condición.

Sentencias SQL lógicas

A continuación se muestra una lista de todos los operadores booleanos disponibles en la gramática SQL de DocumentDB.

S.No. Operadores y descripción
uno

Y

El operador AND permite múltiples condiciones en la cláusula WHERE de la instrucción SQL.

2

ENTRE

El operador BETWEEN se usa para encontrar valores que están en un conjunto de valores, dado el valor mínimo y máximo.

3

EN

El operador IN se utiliza para comparar un valor con una lista de valores literales especificados.

cuatro

O

El operador OR se utiliza para combinar varias condiciones en la cláusula WHERE de una declaración SQL.

cinco

NO

El operador NO cambia el significado del operador lógico con el que se usa. Por ejemplo, NO EXISTE, NO ENTRE, NO EN, etc. Este es el operador de negación.

Operadores aritméticos SQL

A continuación se muestra una lista de todos los operadores aritméticos disponibles en la gramática de DocumentDB de SQL.

S.No. Operadores y descripción
uno

+

A̱adiendo РAgrega valores a ambos lados del operador.

2

Sustracción – Resta el operando de la derecha del operando de la izquierda.

3

*

Multiplicación – Multiplica los valores a ambos lados del operador.

cuatro

/

Separación – Divide el operando izquierdo por el operando derecho.

cinco

%

Módulo – Divide el operando izquierdo por el derecho y devuelve el resto.

Cubriremos los mismos documentos en este ejemplo. Lo que sigue es el AndersenFamilia documento.

{ 
   "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 
}

Lo que sigue es el SmithFamily documento.

{ 
   "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 
}

Lo que sigue es el WakefieldFamilia documento.

{ 
   "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 
}

Veamos un ejemplo simple donde se usa el operador de comparación en una cláusula WHERE.

Operador de comparación

Esta consulta especifica la condición (WHERE f.id = «WakefieldFamily») en la cláusula WHERE y recuperará el documento cuyo ID es WakefieldFamily.

SELECT * 
FROM f  
WHERE f.id = "WakefieldFamily"

Cuando se complete la solicitud anterior, devolverá el documento JSON completo para WakefieldFamily como se muestra en el siguiente resultado.

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

Veamos otro ejemplo en el que la consulta recuperará datos sobre niños con una puntuación superior a 5.

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

La ejecución de la consulta anterior obtendrá el siguiente subdocumento como se muestra en el resultado.

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

🚫