Latest web development tutorials

operador de SQLite

Lo operador SQLite es?

Operador es una palabra o carácter reservado, cláusula WHERE para llevar a cabo las operaciones se utiliza principalmente para la declaración de SQLite, como la comparación y la aritmética.

Operador se utiliza para especificar la declaración de la condición de SQLite y la conexión de una pluralidad de condiciones en el comunicado.

  • Los operadores aritméticos

  • comparación

  • Los operadores lógicos

  • Los operadores bit a bit

operadores aritméticos SQLite

Supongamos que la variable a = 10, la variable b = 20, a continuación:

运算符描述实例
+加法 - 把运算符两边的值相加 a + b 将得到 30
-减法 - 左操作数减去右操作数 a - b 将得到 -10
*乘法 - 把运算符两边的值相乘 a * b 将得到 200
/除法 - 左操作数除以右操作数 b / a 将得到 2
%取模 - 左操作数除以右操作数后得到的余数 b % a will give 0

Ejemplos

Aquí es un simple ejemplo de SQLite operadores aritméticos:

sqlite> línea de .mode
sqlite> seleccione 10 + 20;
10 + 20 = 30


sqlite> seleccionar el número 10 - 20;
10--20 = -10


sqlite> selecciona 10 * 20;
10 * 20 = 200


sqlite> seleccione 10/5;
10/5 = 2


sqlite> seleccione 12% 5;
2 5 = 12%

comparación de SQLite

Supongamos que la variable a = 10, la variable b = 20, a continuación:

运算符描述实例
==检查两个操作数的值是否相等,如果相等则条件为真。 (a == b) 不为真。
=检查两个操作数的值是否相等,如果相等则条件为真。 (a = b) 不为真。
!=检查两个操作数的值是否相等,如果不相等则条件为真。 (a != b) 为真。
<>检查两个操作数的值是否相等,如果不相等则条件为真。 (a <> b) 为真。
>检查左操作数的值是否大于右操作数的值,如果是则条件为真。 (a > b) 不为真。
<检查左操作数的值是否小于右操作数的值,如果是则条件为真。 (a < b) 为真。
>=检查左操作数的值是否大于等于右操作数的值,如果是则条件为真。 (a >= b) 不为真。
<=检查左操作数的值是否小于等于右操作数的值,如果是则条件为真。 (a <= b) 为真。
!<检查左操作数的值是否不小于右操作数的值,如果是则条件为真。 (a !< b) 为假。
!>检查左操作数的值是否不大于右操作数的值,如果是则条件为真。 (a !> b) 为真。

Ejemplos

tabla supongamos que la empresa tiene los siguientes registros:

ID NOMBRE EDAD DIRECCIÓN SALARIO
---------- ---------- ---------- ---------- ----------
1 Pablo California 32 20000.0
2 Allen Tejas 25 15000.0
3 Teddy 23 20000.0 Noruega
4 Marcos 25 Rich Mond-65000.0
5 David de Texas 27 85000.0
Kim 6 22 Sur-Hall 45.000,0
7 James Houston 24 10000.0

El siguiente ejemplo muestra el uso de diversos comparación SQLite.

Aquí, utilizamosla cláusula WHERE,que será cubierto en un capítulo aparte en la parte de atrás, pero ahora es necesario entender, la cláusula WHERE de la instrucción SELECT se utiliza para establecer una sentencia condicional.

La siguiente sentencia SELECT lista todos los registros SALARIO es superior a 50.000,00:

sqlite> SELECT * FROM empresa DONDE SALARIO> 50000;
ID NOMBRE EDAD DIRECCIÓN SALARIO
---------- ---------- ---------- ---------- ----------
4 Marcos 25 Rich Mond-65000.0
5 David de Texas 27 85000.0

La siguiente sentencia SELECT lista SALARIO 20.000,00 igual a todos los registros:

sqlite> SELECT * FROM empresa DONDE SALARIO = 20000;
ID NOMBRE EDAD DIRECCIÓN SALARIO
---------- ---------- ---------- ---------- ----------
1 Pablo California 32 20000.0
3 Teddy 23 20000.0 Noruega

La sentencia SELECT siguiente lista el sueldo no es igual a todos los registros de 20.000,00:

! SQLite> SELECT * FROM empresa DONDE SALARIO = 20000;
ID NOMBRE EDAD DIRECCIÓN SALARIO
---------- ---------- ---------- ---------- ----------
2 Allen Tejas 25 15000.0
4 Marcos 25 Rich Mond-65000.0
5 David de Texas 27 85000.0
Kim 6 22 Sur-Hall 45.000,0
7 James Houston 24 10000.0

La sentencia SELECT siguiente lista el sueldo no es igual a todos los registros de 20.000,00:

sqlite> SELECT * FROM empresa DONDE SALARIO <> 20000;
ID NOMBRE EDAD DIRECCIÓN SALARIO
---------- ---------- ---------- ---------- ----------
2 Allen Tejas 25 15000.0
4 Marcos 25 Rich Mond-65000.0
5 David de Texas 27 85000.0
Kim 6 22 Sur-Hall 45.000,0
7 James Houston 24 10000.0

La sentencia SELECT siguiente lista el salario es mayor que la suma de todos los registros de 65,000.00:

sqlite> SELECT * FROM empresa DONDE SALARIO> = 65000;
ID NOMBRE EDAD DIRECCIÓN SALARIO
---------- ---------- ---------- ---------- ----------
4 Marcos 25 Rich Mond-65000.0
5 David de Texas 27 85000.0

operadores lógicos SQLite

Aquí está una lista de operadores lógicos SQLite todos.

运算符描述
ANDAND 运算符允许在一个 SQL 语句的 WHERE 子句中的多个条件的存在。
BETWEENBETWEEN 运算符用于在给定最小值和最大值范围内的一系列值中搜索值。
EXISTSEXISTS 运算符用于在满足一定条件的指定表中搜索行的存在。
ININ 运算符用于把某个值与一系列指定列表的值进行比较。
NOT ININ 运算符的对立面,用于把某个值与不在一系列指定列表的值进行比较。
LIKELIKE 运算符用于把某个值与使用通配符运算符的相似值进行比较。
GLOBGLOB 运算符用于把某个值与使用通配符运算符的相似值进行比较。GLOB 与 LIKE 不同之处在于,它是大小写敏感的。
NOTNOT 运算符是所用的逻辑运算符的对立面。比如 NOT EXISTS、NOT BETWEEN、NOT IN,等等。它是否定运算符。
OROR 运算符用于结合一个 SQL 语句的 WHERE 子句中的多个条件。
IS NULLNULL 运算符用于把某个值与 NULL 值进行比较。
ISIS 运算符与 = 相似。
IS NOTIS NOT 运算符与 != 相似。
||连接两个不同的字符串,得到一个新的字符串。
UNIQUEUNIQUE 运算符搜索指定表中的每一行,确保唯一性(无重复)。

Ejemplos

tabla supongamos que la empresa tiene los siguientes registros:

ID NOMBRE EDAD DIRECCIÓN SALARIO
---------- ---------- ---------- ---------- ----------
1 Pablo California 32 20000.0
2 Allen Tejas 25 15000.0
3 Teddy 23 20000.0 Noruega
4 Marcos 25 Rich Mond-65000.0
5 David de Texas 27 85000.0
Kim 6 22 Sur-Hall 45.000,0
7 James Houston 24 10000.0

El siguiente ejemplo muestra el uso de los operadores lógicos SQLite.

La siguiente sentencia SELECT lista EDAD 25y mayor que o igual o mayor que la igualdad de salarios para todos los registros 65000.00:

sqlite> SELECT * FROM EMPRESA donde la edad> = 25 y el sueldo> = 65000;
ID NOMBRE EDAD DIRECCIÓN SALARIO
---------- ---------- ---------- ---------- ----------
4 Marcos 25 Rich Mond-65000.0
5 David de Texas 27 85000.0

La siguiente sentencia SELECT lista EDAD 25o mayor o igual o mayor que la igualdad de salarios para todos los registros 65000.00:

sqlite> SELECT * FROM EMPRESA donde la edad> = 25 o salario> = 65000;
ID NOMBRE EDAD DIRECCIÓN SALARIO
---------- ---------- ---------- ---------- ----------
1 Pablo California 32 20000.0
2 Allen Tejas 25 15000.0
4 Marcos 25 Rich Mond-65000.0
5 David de Texas 27 85000.0

La siguiente sentencia SELECT lista la edad no es NULL para todos los registros, todos los registros mostraron, significa que no hay ningún registro de AGE es igual a NULL:

sqlite> SELECT * FROM empresa DONDE edad no es NULL;
ID NOMBRE EDAD DIRECCIÓN SALARIO
---------- ---------- ---------- ---------- ----------
1 Pablo California 32 20000.0
2 Allen Tejas 25 15000.0
3 Teddy 23 20000.0 Noruega
4 Marcos 25 Rich Mond-65000.0
5 David de Texas 27 85000.0
Kim 6 22 Sur-Hall 45.000,0
7 James Houston 24 10000.0

Carácter siguiente SELECT NOMBRE listas de instrucciones de "Ki" todos los registros comenzó, "Ki" es sin límite después de:

sqlite> SELECT * FROM empresa DONDE nombre como 'Ki%';
ID NOMBRE EDAD DIRECCIÓN SALARIO
---------- ---------- ---------- ---------- ----------
Kim 6 22 Sur-Hall 45.000,0

Carácter siguiente SELECT NOMBRE listas de instrucciones de "Ki" todos los registros comenzó, "Ki" es sin límite después de:

sqlite> SELECT * FROM empresa DONDE NOMBRE Glob "Ki * ';
ID NOMBRE EDAD DIRECCIÓN SALARIO
---------- ---------- ---------- ---------- ----------
Kim 6 22 Sur-Hall 45.000,0

La siguiente sentencia SELECT lista todo el valor EDAD registros de 25 o 27:

sqlite> SELECT * FROM empresa DONDE EN EDAD (25, 27);
ID NOMBRE EDAD DIRECCIÓN SALARIO
---------- ---------- ---------- ---------- ----------
2 Allen Tejas 25 15000.0
4 Marcos 25 Rich Mond-65000.0
5 David de Texas 27 85000.0

La sentencia SELECT siguiente lista los valores de edad no es ni el 25 ni el 27 de todos los registros:

sqlite> SELECT * FROM empresa DONDE NO EN EDAD (25, 27);
ID NOMBRE EDAD DIRECCIÓN SALARIO
---------- ---------- ---------- ---------- ----------
1 Pablo California 32 20000.0
3 Teddy 23 20000.0 Noruega
Kim 6 22 Sur-Hall 45.000,0
7 James Houston 24 10000.0

La sentencia SELECT siguiente lista los valores de todos los registros EDAD entre 25 y 27:

sqlite> SELECT * FROM empresa DONDE edad entre 25 y 27;
ID NOMBRE EDAD DIRECCIÓN SALARIO
---------- ---------- ---------- ---------- ----------
2 Allen Tejas 25 15000.0
4 Marcos 25 Rich Mond-65000.0
5 David de Texas 27 85000.0

La siguiente instrucción SELECT utiliza subconsultas SQL, subconsulta hallazgo SALARIO> campo de edad para todos los registros con 65.000, detrás de la cláusula WHERE se utiliza en conjunto con el operador EXISTS, enumera presencia consulta externa AGE en los rendimientos sub-consulta los resultados de todos los registros:

sqlite> ELIGE LA EDAD DE EMPRESA 
        DONDE EXISTE (SELECCIONAR LA EDAD DE EMPRESA WHERE SALARIO> 65000);
EDAD
----------
32
25
23
25
27
22
24

La siguiente instrucción SELECT utiliza subconsultas SQL, subconsulta hallazgo SALARIO> campo de edad para todos los registros con 65.000, detrás de la cláusula WHERE y> operadores se utilizan juntos, los resultados de la consulta devuelve una lista de la consulta externa es mayor que el sub-AGE todos los registros de la época:

sqlite> SELECT * FROM EMPRESA 
        Donde la edad> (SELECCIONAR LA EDAD DE EMPRESA WHERE SALARIO> 65000);
ID NOMBRE EDAD DIRECCIÓN SALARIO
---------- ---------- ---------- ---------- ----------
1 Pablo California 32 20000.0

Los operadores bit a bit SQLite

operadores de bits que actúan sobre la broca, y poco a poco la operación. Tabla de verdad y y | de la siguiente manera:

pqp & qp | q
0000
0101
1111
1001

Supongamos que si A = 60 y B = 13, ahora en un formato binario, que es la siguiente:

A = 0011 1100

B = 0000 1101

-----------------

A y B = 0000 1100

A | B = 0011 1101

~ A = 1100 0011

La siguiente tabla muestra los idiomas soportados por los operadores de bits SQLite. Supongamos que la variable A = 60, la variable B = 13, entonces:

运算符描述实例
&如果同时存在于两个操作数中,二进制 AND 运算符复制一位到结果中。 (A & B) 将得到 12,即为 0000 1100
|如果存在于任一操作数中,二进制 OR 运算符复制一位到结果中。 (A | B) 将得到 61,即为 0011 1101
~二进制补码运算符是一元运算符,具有"翻转"位效应。 (~A ) 将得到 -61,即为 1100 0011,2 的补码形式,带符号的二进制数。
<<二进制左移运算符。左操作数的值向左移动右操作数指定的位数。 A << 2 将得到 240,即为 1111 0000
>> 二进制右移运算符。左操作数的值向右移动右操作数指定的位数。 A >> 2 将得到 15,即为 0000 1111

Ejemplos

El siguiente ejemplo muestra el uso de SQLite bit a bit:

sqlite> línea de .mode
sqlite> seleccione 60 | 13;
60 | 13 = 61

sqlite> seleccione 60 y 13;
60 y 13 = 12

sqlite> seleccione 60 ^ 13;
10 * 20 = 200


sqlite> seleccionar (~ 60);
(~ 60) = -61

sqlite> seleccionar (60 << 2);
(2 << 60) = 240

sqlite> select (60 >> 2);
(60 >> 2) = 15