Resumo : neste tutorial, você aprenderá como usar SELECT
a instrução SQLite para consultar dados de uma única tabela.
A SELECT
instrução é uma das instruções mais comumente usadas em SQL. A instrução SQLite SELECT
fornece todos os recursos da SELECT
instrução no padrão SQL.
Usos simples de SELECT
declaração
Você pode usar a SELECT
instrução para realizar um cálculo simples da seguinte maneira:
SELECT 1 + 1;
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Você pode usar várias expressões na SELECT
instrução da seguinte maneira:
SELECT
10 / 5,
2 * 4 ;
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Consultando dados de uma tabela usando a SELECT
instrução
Freqüentemente usamos a SELECT
instrução para consultar dados de uma ou mais tabelas. A sintaxe da SELECT
instruçã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;
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
A SELECT
instrução é a instrução mais complexa do SQLite. Para facilitar a compreensão de cada parte, dividiremos a 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 agregada para cada grupo.
- Use a cláusula HAVING para filtrar grupos
Neste tutorial, vamos nos concentrar na forma mais simples da SELECT
instrução que permite consultar dados de uma única tabela.
SELECT column_list
FROM table;
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Mesmo que a SELECT
cláusula apareça antes da FROM
cláusula, o SQLite avalia FROM
primeiro a cláusula e depois a SELECT
cláusula, portanto:
- Primeiro, especifique a tabela de onde deseja obter os dados na
FROM
cláusula. Observe que você pode ter mais de uma tabela naFROM
cláusula. Discutiremos isso no tutorial subsequente. - Segundo, especifique uma coluna ou uma lista de colunas separadas por vírgula na
SELECT
cláusula.
Você usa o ponto e vírgula (;) para encerrar a instrução.
SELECT
Exemplos de SQLite
Vamos dar uma olhada na tracks
tabela do banco de dados de exemplo .
A 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;
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Você especifica os nomes das colunas de uma lista, cujos dados deseja obter, na SELECT
cláusula e a tracks
tabela na FROM
cláusula. SQLite retorna o seguinte resultado:
Para obter dados de todas as colunas, especifique as colunas da tracks
tabela na SELECT
cláusula da seguinte forma:
SELECT
trackid,
name,
albumid,
mediatypeid,
genreid,
composer,
milliseconds,
bytes,
unitprice
FROM
tracks;
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Para uma tabela com muitas colunas, a consulta seria tão longa que demoraria muito 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;
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
A consulta é mais curta e mais limpa agora.
No entanto…
Você deve usar o asterisco (*) apenas para fins de teste, não no desenvolvimento real do aplicativo.
Porque…
Ao desenvolver uma aplicação, você deve controlar o que o SQLite retorna para sua aplicação. 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 removesse uma coluna, sua aplicação não funcionaria corretamente, pois pressupõe 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 criará mais sobrecarga de E/S entre o banco de dados e o aplicativo.
Portanto, evite usar o asterisco (*) como um bom hábito ao usar a SELECT
afirmação.
Neste tutorial, você aprendeu como usar uma forma simples de SELECT
instrução SQLite para consultar dados de uma única tabela.