Neste artigo vamos ver um pequeno guia e os principais pontos do comando SELECT, um dos mais importantes na linguagem SQL. Essa linguagem foi criada com o objetivo de padronizar os comandos de manipulação de dados em SGBDs. Entenda todo sobre Comando SELECT: conheça o seu guia e os principais pontos
Atualmente, apesar da linguagem contar com uma quantidade considerável de extensões e implementações proprietárias, pode-se afirmar que a meta foi alcançada.
Tendo um bom conhecimento da linguagem é possível acessar os recursos básicos de qualquer banco de dados relacionais, como Oracle, SQL Server ou MySQL sem praticamente nenhuma mudança.
O comando SELECT
Esse comando é utilizado para extrair dados das tabelas de um banco de dados, podendo ser de uma empresa de instalação de controle de acesso, por exemplo.
Com esse comando você pode extrair dados de uma ou mais tabelas ao mesmo tempo, executando desde uma simples consulta até comandos mais complexos, como:
- Buscas;
- Junções;
- Filtros comparativos;
- Ordenações.
Vamos seguir aprendendo algumas das principais cláusulas para o uso do comando SELECT.
SELECT simples
Esse comando permite recuperar dados de um objeto do banco de dados, como uma tabela, view, e em alguns casos uma stores procedure, pois alguns bancos de dados permitem a criação de procedimentos que retornam um valor.
Nesse sentido, o caractere asterisco (*) representa todos os campos da tabela. Ele é prático, mas não é muito utilizado, pois para o SGBD é mais rápido receber o comando com os campos explicitados.
Usar o asterisco obriga o servidor de sua empresa de gestão de obras a consultar quais são os campos antes de efetuar a busca dos dados, criando mais um passo no processo.
É preciso ter cuidado com esse caractere principalmente se você está manipulando dados em um ambiente de produção.
Esse caractere pode ser traduzido como “todas as colunas” e, em muitos casos, executar esse comando pode sobrecarregar a performance de seu banco de dados.
Cláusula WHERE
Após aprender a extrair dados de suas tabelas de forma simples, vamos falar sobre adicionar filtros para suas consultas. Essa cláusula é responsável por filtrar resultados, utilizando parâmetros comparativos como igual, diferente, maior, menor, entre outros.
É possível adicionar diversos filtros em nossas consultas, inclusive adicionar parênteses para priorizar consultas dentro de escopos. A cláusula WHERE tem como propósito extrair os resultados para uma necessidade específica.
Por exemplo, se o usuário de um blog entrou no link da postagem e precisamos descobrir qual é a postagem relacionada, podemos filtrar utilizando o campo slug.
Tenha em mente que para condições onde são usados textos, devemos utilizar aspas simples para englobá-lo na consulta de sua empresa de materiais de incêndio, por exemplo.
Principais comparativos
Indo mais além que o comparador de igualdade (=), podemos usar diversos outros tipos de comparadores para melhorar a nossa consulta.
Operador comparativo “<>” (diferente)
Esse é um comparador usado para buscar itens que sejam diferentes de um parâmetro pré-determinado.
Operador comparativo “>” (maior que)
Visando buscar itens que sejam maiores que um valor determinado, utilizamos esse comparador. Uma variação possível aqui é o operador maior ou igual “>=”, incluindo o valor determinado na consulta realizada.
Operador comparativo “<” (menor que)
Sendo o contrário do operador apresentado anteriormente, o operador “menor que” buscará itens que sejam menores que um valor determinado por empresas de modernização de elevadores, por exemplo, ou seja qual for a sua empresa.
Operador comparativo “LIKE” (busca parcial de texto)
Se você quer buscar itens que contenham trechos de um texto, o mais indicado é usar o comparativo LIKE. Este operador vem acompanhado de uma máscara de filtro, que pode variar de um SGBD para outro, sendo normalmente utilizado o “%”.
Você pode também pesquisar por um trecho que se encontra no meio de outras palavras, não estando nem no início nem no fim do texto, usando a máscara dos dois lados do termo.
Juntando comparativos
Indo mais além de tudo que já foi apresentado, podemos ainda utilizar operadores lógicos para refinar ainda mais nossa consulta.
Para essa finalidade existem os operadores “AND”, “OR” e o uso de parênteses, que fazem com que os filtros sejam executados primeiro, assim como em uma operação matemática.
Operador lógico “AND”
Esse operador verifica as condições como um todo, retornando os resultados que atendem a todas as condições.
Operador lógico “OR”
Esse operador verifica separadamente as condições, retornando os resultados que atendem pelo menos uma das condições.
Uso de parênteses
Uma empresa de monitoramento eletrônico pode utilizar parênteses para dar prioridade a uma condição dentro de uma consulta.
Cláusula ORDER BY
Essa cláusula é utilizada para ordenar resultados, podendo ser ordenado de forma ascendente (ASC) ou descendente (DESC). Essa cláusula deve ser inserida após as cláusulas anteriores durante sua busca no banco de dados. Vamos explicar melhor.
Modo ascendente (ASC)
Esse é o modo padrão do ORDER BY, não precisando estar explícito no comando, pois se você não colocar nada, será feito automaticamente.
Modo descendente (DESC)
Em blogs de empresas, como uma empresa de instalação elétrica industrial, a última postagem é sempre a que fica em primeiro lugar na lista.
Visando organizar isso em seu banco de dados, você pode utilizar a ordenação descendente utilizando parâmetros como datas.
Junção de tabelas
Se você chegou até aqui é porque realmente procura conhecimento, e temos mais alguns comandos para introduzir para você. Após saber mais sobre buscar, filtrar e ordenar seus resultados, vamos ver como unir diferentes tabelas em uma só consulta.
Um bom exemplo da aplicação da junção de tabelas seria trazer postagens de um blog juntamente com suas imagens relacionadas. Para fazer isso, no comando SELECT é preciso utilizar o prefixo das tabelas para especificar quais campos desejamos trazer.
Seguindo o exemplo do blog, imagine duas tabelas: a tabela blog_posts e blog_post_imagem. Fazendo essa consulta será retornado o id e o título da postagem, além do id das imagens relacionadas.
Nesse caso, a tabela blog_post_image conta com os ids de referência tanto para a postagem quanto para a imagem. Dessa forma, essa tabela é responsável por ligar uma à outra, e com uma consulta podemos identificar os ids das imagens para cada postagem.
Alias e Tabelas
Na cláusula FROM são colocadas todas as tabelas que são referenciadas. Todas as vezes que precisarmos utilizar uma coluna, é preciso acrescentar o prefixo com o nome da tabela.
No entanto, para consultas maiores isso pode ficar muito repetitivo, então como solução podemos usar um “alias”.
Ele serve para criar uma chave única que referencia a tabela, facilitando o entendimento e a manutenção das consultas em sua empresa de elaboração de projetos instalações elétricas.
Comando JOIN
Algo que você precisa saber é que a junção de tabelas no comando SELECT também pode ser feita com o comando JOIN. Para usar esse comando é preciso usar os operadores INNER ou OUTER. O INNER é semelhante ao uso do operador “=” na junção de tabelas.
Nesse caso os registros sem correspondência não são incluídos. Essa é uma cláusula opcional que pode ser omitida no comando JOIN. Já o complemento OUTER faz com que os registros que não se relacionam também sejam exibidos.
Aqui é possível definir qual tabela será incluída na seleção, ainda que não exista correspondência.
Agrupamento
Chegamos ao último recurso que falaremos neste artigo. O GROUPY BY é um poderoso recurso do comando SELECT.
Com ele podemos retornar informações agrupadas em um conjunto de registros, estabelecendo uma condição de agrupamento, sendo um recurso muito utilizado na criação de relatórios.
Existem algumas funções básicas de agrupamento que sua empresa de aluguel de aparelho lava jato pode usar, como:
- AVG: Retorna a média do campo especificado;
- SELECT AVG(VALOR) FROM PEDIDOS;
- MIN: retorna o menor valor;
- MAX: retorna o maior valor;
- SUM: retorna o somatório de um grupo de registros;
- SELECT MIN(VALOR) FROM PEDIDOS;
- SELECT MAX(VALOR) FROM PEDIDOS;
- SELECT AVG(VALOR) FROM PEDIDOS;
- COUNT: traz a quantidade de itens da seleção.
Com todos esses operadores que você conheceu aqui hoje, certamente estará apto a fazer buscas mais complexas em seu banco de dados.
Considerações finais
Certamente você teve um grande volume de informações para um dia, e esperamos que aqui você tenha aprendido mais sobre o comando SELECT.
Esse conteúdo será muito útil principalmente se você está iniciando na área de desenvolvimento ou mesmo como um DBA novato.
Talvez para quem já tenha grande experiência na área o artigo seja uma breve introdução ao tema, e não tenha trazido tantas novidades.
Neste artigo trouxemos as principais cláusulas e operadores para você trabalhar suas tabelas em bancos de dados SQL.
Esperamos que você tenha aprendido e que este artigo só tenha aumentado sua curiosidade sobre a manipulação de bancos de dados.
Esse texto foi originalmente desenvolvido pela equipe do blog Guia de Investimento, onde você pode encontrar centenas de conteúdos informativos sobre diversos segmentos.