O banco de dados não é utilizado apenas para armazenar dados, em alguns momentos é necessário realizar consultas ou até comunicar com outras ferramentas e sistemas para fazer relatórios, mas como tudo isso é feito? Com a cláusula SELECT, a principal função do SELECT é consultar/buscar os dados de uma tabela em um banco de dados.
Autor(a)
Maria Gabriela Oliva
Oi, eu sou a Maria.
Sou graduada em Sistemas para Internet, apaixonada por tecnologia, dados e gatos. Já atuei em algumas áreas antes de vir para área de dados, como: devops e desenvolvimento de software.
Atualmente estou na área de dados, com conhecimento em banco de dados, SQL e nas mais variadas ferramentas de Business Intelligence.
Inscreva-se em nossa Newsletter
Fique por dentro de conteúdos, insights e oportunidades do universo tech. Receba novidades e lançamentos direto no seu e-mail.
Vamos supor que precisamos desenvolver um relatório para algum cliente/sistema ou até mesmo consultar uma informação que mostra inconsistência no sistema, mas como fazemos isso? Usando o SELECT para buscar esses dados.
SELECT SIMPLES
A sintaxe básica do comando é:
SELECT campos FROM nome_da_tabela
Bom, nós temos em nosso banco de dados a tabela de clientes:
id
nome
telefone
genero
data_cadastro
1
Roberta de Jesus
9999-9999
F
10-12-2019
2
Denis Oliveira
8888-8888
M
05-11-2019
3
Valeria Custodio
7777-7777
F
20-10-2019
4
Isabel Borges
5555-555
F
01-10-2019
Então, para consultar podemos fazer de duas formas:
Trazendo todos os campos:
SELECT * FROM clientes
Neste comando, todos clientes são retornados.
Ou
Trazendo alguns campos:
SELECT nome, telefone FROM clientes
Neste comando, nome e telefone de todos os clientes são retornados.
O asterisco representa todos os campos. É bem prático, mas não muito utilizado. Ao usar o asterisco para trazer todos os campos, ele obriga o servidor do banco de dados a procurar os campos antes de trazer os dados e assim, causando uma demora no retorno da consulta.
SELECT COM WHERE
O WHERE é utilizado no SQL para passar condições/regras de filtragem.
Vamos supor que queremos ver todos clientes do gênero feminino em nossa tabela, então, utilizamos o WHERE para realizar essa filtragem:
SELECT*FROM clientes WHERE genero = “F”
Neste comando, todos clientes do gênero feminino são retornados.
Também podemos usar operadores lógicos para usar mais de uma condição dentro do WHERE.
SELECT*FROM clientes WHERE genero = “F” AND nome LIKE “R%”
Neste comando, todos os clientes do gênero feminino com nomes que iniciam com R serão retornados.
Além do operador de igual (=) temos o IN e o BETWEEN.
IN
O IN é utilizado para fazer a filtragem a partir de uma lista de buscas.
SELECT*FROM clientes WHERE genero IN id (1, 2, 3)
Neste comando, todos os clientes com id 1, 2 e 3 serão retornados.
BETWEEN
O BETWEEN é utilizado para fazer buscas entre intervalos. É mais utilizado para filtrar intervalos de datas.
SELECT*FROM clientes WHERE data_cadastro BETWEEN ‘10-12-2019’ AND ‘20-10-2019’
Neste comando, todos os clientes que foram cadastrados entre essas datas serão retornados.
LIKE
O LIKE é utilizado para buscar strings(texto) dentro de uma coluna com valores textuais. Podemos buscar as linhas que o nome inicia com uma determinada palavra, como vimos acima ou contém um certo texto.
string: são retornadas todas as linhas que tem na coluna buscada exatamente a "string" informada no filtro. É a mesma coisa de usar o operador de igual.
%string%: são retornadas as linhas que tem na coluna buscada a "string" informada. Podemos buscar os nomes que tem "Jesus", ou que tem alguma sílaba ou letra específica. A linha com o nome "Roberta de Jesus", contém o termo "da", então atenderia ao filtro '%de%'.
%string: são retornadas as linhas que a coluna filtrada termina com a "string" informada. O % indica que pode ter qualquer valor no começo do campo, desde que ele termine com a “string". A linha com nome "Roberta de Jesus" atenderia ao filtro '%Jesus'.
string%: são retornadas as linhas que o coluna filtrada começa com a “string" informada. O % indica que depois da “string” pode ter qualquer valor. A linha com nome "Roberta de Jesus", atenderia ao filtro 'Roberta%'.
ORDER BY
O ORDER BY é utilizado para ordenação. Podemos ordenar em ordem crescente (ASC) ou em ordem decrescente (DESC).
SELECT*FROM clientes ORDERBY nome ASC
Neste comando, serão retornados todos os clientes ordenados pelo nome em ordem crescente.
Então pessoal, vimos neste artigo como fazer consultas simples apenas com o SELECT, como incrementar essas consultas criando filtros com WHERE e ordenar os dados com o ORDER BY.
Gostou deste artigo e quer conhecer ainda mais sobre banco de dados e SQL?
A Formação Modelagem de Dados foi feita para você! Acesse a formação e descubra o que mais você pode fazer com banco de dados e SQL.