Artigo escrito por Rafael Toledo
O que é SQL?
SQL é a sigla para “Structured Query Language”, ou em português “Linguagem de Consulta Estruturada”. É uma linguagem de programação utilizada para gerenciar e manipular dados em bancos de dados relacionais.
Com o SQL, é possível executar uma variedade de operações em bancos de dados, como criar, inserir, atualizar, excluir, selecionar e modificar dados. O SQL é utilizado em empresas e organizações para gerenciar grandes quantidades de dados, tornando possível o armazenamento e a recuperação de informações em bancos de dados com facilidade e eficiência.
Função SELECT
SELECT é uma das principais cláusulas do SQL e é usada para selecionar dados de uma ou mais tabelas. A sintaxe básica de uma instrução SELECT é a seguinte:
Onde CustomerName, City são as colunas que você deseja selecionar e Customers é a tabela que contém essas colunas.
Se você quiser selecionar o nome, endereço e cidade dos clientes, pode usar a seguinte instrução:
E é retornada a tabela com as seguintes informações:
É possível usar funções de agregação como COUNT, SUM, AVG, MIN e MAX. Neste exemplo temos a contagem do número de linhas (ou registros) na tabela de clientes. Note que na query é utilizado (*), que significa que estamos solicitando todas as colunas/registros da tabela.
Desta query, obtem-se o resultado de 91 registros (ou número de linhas) da tabela de clientes.
Neste exemplo estamos usando (*) atrelado a uma outra função SQL que será explicada posteriormente neste artigo. Entretanto, definindo de maneira rápida, esta função permite limitar a quantidade de registros que serão retornados na query. Dessa forma, com a função LIMIT 5, limitamos para o número de 5 registros/observações que irão retornar da referida tabela.
Função WHERE
WHERE é uma cláusula do SQL que é usada para filtrar dados em uma consulta. A cláusula WHERE é seguida de uma ou mais condições que especificam os critérios de seleção.
Vamos exemplificar a sintaxe básica para usar WHERE da seguinte maneira:
Onde ProductName, Unit, Price são as colunas que você deseja selecionar, Products é a tabela que contém essas colunas e Price > 15 é a condição que você deseja aplicar para filtrar os dados.
Então, neste exemplo temos os produtos e as unidades com preço maior que 15 dólares. Vale destacar que limitamos para que sejam consultadas apenas as 10 primeiras linhas.
Função LIMIT
Você deve ter notado que durante a apresentação das funções anteriores utilizamos a função LIMIT na construção das querys.
LIMIT é uma cláusula do SQL que é usada para limitar o número de linhas retornadas por uma consulta. É útil quando você deseja visualizar apenas um número limitado de resultados, em vez de todo o conjunto de dados.
Podemos exemplificar a sintaxe para usar LIMIT da seguinte forma:
Onde ContactName, Address, City, Country são as colunas que você deseja selecionar, Customers é a tabela que contém essas colunas e LIMIT é o número máximo de linhas que você deseja retornar.
Neste exemplo temos os nomes dos clientes, o endereço, a cidade, o código postal e o país. Observe que o número de linhas solicitado foi 8, devido ao uso da função LIMIT 8.
Função GROUP BY
A função que iremos apresentar é o GROUP BY. Sendo esta uma cláusula do SQL que é usada para agrupar linhas com base nos valores em uma ou mais colunas. Essa cláusula é frequentemente usada com funções de agregação para realizar cálculos em grupos específicos de dados. A sintaxe básica para usar GROUP BY é a seguinte:
Exemplificando a sintaxe básica para usar GROUP BY, temos:
Esta instrução usa a cláusula GROUP BY para agrupar as linhas da tabela OrderDetails por OrderID e a função de agregação SUM para calcular o valor total da quantidade em cada OrderID. A cláusula AS total_quantidade é usada para atribuir um nome mais descritivo à coluna calculada.
Também é possível usar várias colunas na cláusula GROUP BY para agrupar os dados por várias dimensões. Por exemplo, para obter o valor total de preço para cada unidade de produto e ID da categoria, você pode usar a seguinte instrução:
Esta instrução usa a cláusula GROUP BY para agrupar as linhas por categoria de produto e unidade. A função de agregação SUM é usada para calcular o valor total do preço em cada grupo. Vale destacar que limitamos para que sejam consultadas apenas as 15 primeiras linhas por meio da função LIMIT 15.
Esses são apenas alguns exemplos de como usar a cláusula GROUP BY em SQL. Há muitas outras opções disponíveis, como HAVING, que permite filtrar grupos com base em critérios específicos.
Função HAVING
A próxima função que será apresentada é a HAVING. Sendo esta uma cláusula do SQL que é usada para filtrar grupos com base em critérios específicos. Esta cláusula é usada juntamente com a cláusula GROUP BY e é colocada após a referida cláusula.
Por exemplo, suponha que você tenha uma tabela chamada Products com as colunas CategoryID, Unit e price. Para obter o valor total do preço para cada categoria de produto, mas apenas para as categorias que tiveram vendas totais superiores a 50, você pode usar a seguinte instrução SELECT com a cláusula HAVING.
Esta instrução usa a cláusula GROUP BY para agrupar as linhas da tabela Products por categoria de produto e a função de agregação SUM para calcular o valor total de preço em cada grupo. A cláusula HAVING é usada para filtrar os grupos com base na condição total_preco > 50, que seleciona apenas as categorias que tiveram vendas totais superiores a 50.
Nota: A cláusula HAVING é usada para filtrar os grupos, enquanto a cláusula WHERE é usada para filtrar as linhas individuais da tabela antes de serem agrupadas.
Função DISTINCT
Essa função é uma cláusula do SQL que é usada para retornar apenas valores distintos de uma coluna em uma consulta SELECT. Essa cláusula é usada para remover valores duplicados da saída da consulta. A sintaxe básica para usar o DISTINCT é a seguinte:
Onde Unit é a coluna pelo qual você deseja retornar valores exclusivos.
Por exemplo, suponha que você tenha uma tabela chamada “Products” com a coluna “Unit”. Se você quiser obter a lista com as 10 primeiras unidades distintas que aparecem na tabela, você pode usar a seguinte instrução SELECT com a cláusula DISTINCT:
Esta instrução retornará apenas os valores distintos da coluna Unit da tabela Products. Note que a cláusula DISTINCT opera em todas as colunas selecionadas na instrução SELECT. Se você quiser retornar apenas valores exclusivos para uma coluna específica, você deve especificar apenas essa coluna após a cláusula SELECT e antes da cláusula DISTINCT.
As tabelas apresentadas podem ser encontradas no website W3SCHOOLS que disponibiliza um compilador SQL online, no qual as querys SQL apresentadas no artigo foram testadas. Website: https://www.w3schools.com/sql/trysql.asp?filename=trysql_select_all
Gostou? Não se esqueça de acompanhar o blog para os próximos artigos sobre esse tema. Qualquer dúvida deixe nos comentários!
Referências
O que é SQL? – Amazon AWS : Disponível em: https://aws.amazon.com/pt/what-is/sql/#:~:text=A%20Linguagem%20de%20consulta%20estruturada%20(SQL)%20%C3%A9%20uma%20linguagem%20padr%C3%A3o,por%20atualiza%C3%A7%C3%B5es%20e%20melhorias%20cont%C3%ADnuas.
Saiba tudo sobre SQL: Disponível em: https://www.alura.com.br/artigos/o-que-e-sql
W3SCHOOLS: Disponível em: https://www.w3schools.com/sql/trysql.asp?filename=trysql_select_all