SQLite onde cláusula
cláusulaWHERE do SQLite para especificar para obter dados de uma ou mais tabelas nas condições.
Se você atender a uma determinada condição é verdadeira (true), a partir da tabela para retornar um valor específico. Você pode usar uma cláusula WHERE para filtrar os registros, basta obter os registros necessários.
Cláusula WHERE é usada não só em uma instrução SELECT, ele também pode ser usado em UPDATE, DELETE, e assim por diante, o que vamos aprender nos capítulos seguintes.
gramática
A sintaxe básica de uma instrução SELECT com uma cláusula WHERE em SQLite como segue:
column1 SELECT, column2, columnn FROM nome_tabela ONDE [condição]
Exemplos
Você também pode usar comparação ou operadores lógicos especificado critérios, tais como>, <, =, LIKE, NÃO, e assim por diante. mesa EMPRESA Suponha que tem os seguintes registros:
ID NOME SALÁRIO IDADE ENDEREÇO ---------- ---------- ---------- ---------- ---------- 1 Paul 32 California 20.000,0 2 Allen 25 Texas 15.000,0 3 Teddy 23 Norway 20.000,0 4 Mark 25 Rich-Mond 65.000,0 5 David 27 Texas 85.000,0 6 Kim 22 Sul-Hall 45.000,0 7 James 24 Houston 10000.0
O exemplo seguinte demonstra a utilização de operadores lógicos SQLite. A seguinte instrução SELECT relaciona AGE 25e maior ou igual maior ou salários iguais para todos os registros 65000.00:
sqlite> SELECT * FROM empresa onde AGE> = 25 E SALÁRIO> = 65000; ID NOME SALÁRIO IDADE ENDEREÇO ---------- ---------- ---------- ---------- ---------- 4 Mark 25 Rich-Mond 65.000,0 5 David 27 Texas 85.000,0
A seguinte instrução SELECT relaciona AGEde 25 oumaior ou igual maior ou salários iguais para todos os registros 65000.00:
sqlite> SELECT * FROM empresa onde AGE> = 25 OR SALÁRIO> = 65000; ID NOME SALÁRIO IDADE ENDEREÇO ---------- ---------- ---------- ---------- ---------- 1 Paul 32 California 20.000,0 2 Allen 25 Texas 15.000,0 4 Mark 25 Rich-Mond 65.000,0 5 David 27 Texas 85.000,0
A seguinte instrução SELECT relaciona o AGE não é NULL para todos os registros, todos os registros mostraram, isso significa que não há registro de idade é igual a NULL:
sqlite> SELECT * FROM empresa onde a idade não é NULL; ID NOME SALÁRIO IDADE ENDEREÇO ---------- ---------- ---------- ---------- ---------- 1 Paul 32 California 20.000,0 2 Allen 25 Texas 15.000,0 3 Teddy 23 Norway 20.000,0 4 Mark 25 Rich-Mond 65.000,0 5 David 27 Texas 85.000,0 6 Kim 22 Sul-Hall 45.000,0 7 James 24 Houston 10000.0
Character seguinte listas de seleção instrução de nome para 'Ki' todos os registros começaram, 'Ki' há limite após:
sqlite> SELECT * FROM empresa onde NOME LIKE 'Ki%'; ID NOME SALÁRIO IDADE ENDEREÇO ---------- ---------- ---------- ---------- ---------- 6 Kim 22 Sul-Hall 45.000,0
Character seguinte listas de seleção instrução de nome para 'Ki' todos os registros começaram, 'Ki' há limite após:
sqlite> SELECT * FROM empresa onde NOME GLOB 'Ki *'; ID NOME SALÁRIO IDADE ENDEREÇO ---------- ---------- ---------- ---------- ---------- 6 Kim 22 Sul-Hall 45.000,0
A seguinte instrução SELECT relaciona todo o valor AGE registros de 25 ou 27:
sqlite> SELECT * FROM empresa onde IDADE IN (25, 27); ID NOME SALÁRIO IDADE ENDEREÇO ---------- ---------- ---------- ---------- ---------- 2 Allen 25 Texas 15.000,0 4 Mark 25 Rich-Mond 65.000,0 5 David 27 Texas 85.000,0
A instrução SELECT a seguir lista os valores de idade é nem 25, nem 27 de todos os registros:
sqlite> SELECT * FROM empresa onde a idade não IN (25, 27); ID NOME SALÁRIO IDADE ENDEREÇO ---------- ---------- ---------- ---------- ---------- 1 Paul 32 California 20.000,0 3 Teddy 23 Norway 20.000,0 6 Kim 22 Sul-Hall 45.000,0 7 James 24 Houston 10000.0
A instrução SELECT a seguir lista os valores AGE todos os registros entre 25 e 27:
sqlite> SELECT * FROM empresa onde Idade entre 25 e 27; ID NOME SALÁRIO IDADE ENDEREÇO ---------- ---------- ---------- ---------- ---------- 2 Allen 25 Texas 15.000,0 4 Mark 25 Rich-Mond 65.000,0 5 David 27 Texas 85.000,0
A seguinte instrução SELECT usa subconsultas SQL, subconsulta achado SALÁRIO> campo de idade para todos os registros com 65.000, atrás da cláusula WHERE é usado em conjunto com o operador que é a lista presença consulta AGE exterior nas sub-consulta retorna resultados de todos os registros:
sqlite> AGE SELECT FROM COMPANY ONDE EXISTE (SELECT em geral de empresa onde SALÁRIO> 65000); AGE ---------- 32 25 23 25 27 22 24
A seguinte instrução SELECT usa subconsultas SQL, subconsulta achado SALÁRIO> campo de idade para todos os registros com 65.000, atrás da cláusula WHERE e> operadores são usados em conjunto, os resultados da consulta retorna uma lista de consulta externa é maior do que a sub-AGE Todos os registros da idade:
sqlite> SELECT * FROM COMPANY Onde a idade> (SELECT em geral de empresa onde SALÁRIO> 65000); ID NOME SALÁRIO IDADE ENDEREÇO ---------- ---------- ---------- ---------- ---------- 1 Paul 32 California 20.000,0