SQLite
 sql >> Base de Dados >  >> RDS >> SQLite

Seleção SQLite


Resumo :neste tutorial, você aprenderá como usar SQLite SELECT instrução para consultar dados de uma única tabela.

O SELECT A instrução é uma das instruções mais comumente usadas em SQL. O SQLite SELECT instrução fornece todos os recursos do SELECT instrução no padrão SQL.

Usos simples de SELECT declaração


Você pode usar o SELECT instrução para realizar um cálculo simples da seguinte forma:
SELECT	1 + 1;Code language: SQL (Structured Query Language) (sql)

Tente

Você pode usar várias expressões no SELECT declaração da seguinte forma:
SELECT 
   10 / 5, 
   2 * 4 ;Code language: SQL (Structured Query Language) (sql)

Tente

Consultando dados de uma tabela usando o SELECT declaração


Costumamos usar o SELECT instrução para consultar dados de uma ou mais tabelas. A sintaxe do SELECT declaração é a seguinte:
SELECT DISTINCT column_list
FROM table_list
  JOIN table ON join_condition
WHERE row_filter
ORDER BY column
LIMIT count OFFSET offset
GROUP BY column
HAVING group_filter;Code language: SQL (Structured Query Language) (sql)

O SELECT instrução é a instrução mais complexa no SQLite. Para facilitar a compreensão de cada parte, vamos quebrar o SELECT declaração em vários tutoriais fáceis de entender.
  • Use a cláusula ORDER BY para classificar o conjunto de resultados
  • Use a cláusula DISTINCT para consultar linhas exclusivas em uma tabela
  • Use a cláusula WHERE para filtrar linhas no conjunto de resultados
  • Use cláusulas LIMIT OFFSET para restringir o número de linhas retornadas
  • Use INNER JOIN ou LEFT JOIN para consultar dados de várias tabelas usando join.
  • Use GROUP BY para colocar as linhas do grupo em grupos e aplicar a função de agregação para cada grupo.
  • Use a cláusula HAVING para filtrar grupos

Neste tutorial, vamos nos concentrar na forma mais simples do SELECT instrução que permite consultar dados de uma única tabela.
SELECT column_list
FROM table;Code language: SQL (Structured Query Language) (sql)

Mesmo que o SELECT cláusula aparece antes do FROM cláusula, o SQLite avalia o FROM cláusula primeiro e depois a SELECT cláusula, portanto:
  • Primeiro, especifique a tabela de onde você deseja obter dados em FROM cláusula. Observe que você pode ter mais de uma tabela no FROM cláusula. Discutiremos isso no tutorial subsequente.
  • Segundo, especifique uma coluna ou uma lista de colunas separadas por vírgulas no SELECT cláusula.

Você usa o ponto e vírgula (;) para encerrar a instrução.

SQLite SELECT exemplos


Vamos dar uma olhada nas tracks tabela no banco de dados de exemplo.

As tracks tabela contém colunas e linhas. Parece uma planilha.

Para obter dados da tabela de faixas, como trackid, nome da faixa, compositor e preço unitário, use a seguinte instrução:
SELECT
	trackid,
	name,
	composer,
	unitprice
FROM
	tracks;Code language: SQL (Structured Query Language) (sql)

Tente

Você especifica uma lista de nomes de colunas, que deseja obter dados, no SELECT cláusula e as tracks tabela no FROM cláusula. SQLite retorna o seguinte resultado:

Para obter dados de todas as colunas, você especifica as colunas das tracks tabela no SELECT cláusula da seguinte forma:
SELECT
	trackid,
	name,
	albumid,
	mediatypeid,
	genreid,
	composer,
	milliseconds,
	bytes,
	unitprice
FROM
	tracks;Code language: SQL (Structured Query Language) (sql)

Tente

Para uma tabela com muitas colunas, a consulta seria tão longa que demoraria para digitar. Para evitar isso, você pode usar o asterisco (*), que é a abreviação de todas as colunas da tabela da seguinte forma:
SELECT * FROM tracks;Code language: SQL (Structured Query Language) (sql)

Tente

A consulta é mais curta e mais limpa agora.

No entanto…

Você deve usar o asterisco (*) apenas para fins de teste, não no desenvolvimento de aplicativos reais.

Porque…

Ao desenvolver um aplicativo, você deve controlar o que o SQLite retorna ao seu aplicativo. Suponha que uma tabela tenha 3 colunas e você use o asterisco (*) para recuperar os dados de todas as três colunas.

E se alguém remover uma coluna, seu aplicativo não estará funcionando corretamente, porque ele assume que há três colunas retornadas e a lógica para processar essas três colunas seria quebrada.

Se alguém adicionar mais colunas, seu aplicativo poderá funcionar, mas obterá mais dados do que o necessário, o que cria mais sobrecarga de E/S entre o banco de dados e o aplicativo.

Portanto, tente evitar usar o asterisco (*) como um bom hábito ao usar o SELECT demonstração.

Neste tutorial, você aprendeu como usar uma forma simples do SQLite SELECT instrução para consultar dados de uma única tabela.