DEV Community

Cover image for SQL (Structured Query Language)
Henrique Vital
Henrique Vital

Posted on

SQL (Structured Query Language)

SQL (Structured Query Language) é a linguagem padrão para manipulação e consulta de bancos de dados relacionais. Vamos aprender os conceitos básicos e exemplos de consultas SQL.

1. Seleção de Dados (SELECT)

A consulta SELECT é usada para recuperar dados de uma tabela.

Sintaxe básica:

SELECT coluna1, coluna2, ... FROM tabela; 
Enter fullscreen mode Exit fullscreen mode

Exemplo:

SELECT nome, idade FROM alunos; 
Enter fullscreen mode Exit fullscreen mode

Essa consulta retorna as colunas nome e idade da tabela alunos.

Seleção de todas as colunas:

SELECT * FROM alunos; 
Enter fullscreen mode Exit fullscreen mode

O asterisco (*) significa que queremos todas as colunas da tabela.

Limitar o número de resultados:

Você pode usar o LIMIT (ou TOP em alguns bancos de dados como SQL Server) para limitar o número de resultados.

Exemplo:

SELECT nome, idade FROM alunos LIMIT 5; 
Enter fullscreen mode Exit fullscreen mode

Isso retorna os primeiros 5 registros da tabela alunos.


2. Filtragem de Dados (WHERE)

O WHERE é usado para filtrar os resultados com base em uma condição.

Sintaxe básica:

SELECT coluna1, coluna2, ... FROM tabela WHERE condição; 
Enter fullscreen mode Exit fullscreen mode

Exemplo:

SELECT nome, idade FROM alunos WHERE idade > 18; 
Enter fullscreen mode Exit fullscreen mode

Esse comando retorna todos os alunos com idade superior a 18 anos.

Operadores de comparação:

  • =: Igual
  • != ou <>: Diferente
  • >: Maior que
  • <: Menor que
  • >=: Maior ou igual
  • <=: Menor ou igual

Operadores lógicos:

  • AND: Ambas as condições devem ser verdadeiras.
  • OR: Pelo menos uma das condições deve ser verdadeira.

Exemplo com AND:

SELECT nome, idade FROM alunos WHERE idade > 18 AND nome LIKE 'J%'; 
Enter fullscreen mode Exit fullscreen mode

Esse comando retorna alunos com idade superior a 18 e cujo nome começa com a letra "J".


3. Ordenação de Dados (ORDER BY)

O ORDER BY é usado para ordenar os resultados.

Sintaxe:

SELECT coluna1, coluna2, ... FROM tabela ORDER BY coluna1 ASC|DESC; 
Enter fullscreen mode Exit fullscreen mode
  • ASC: Ordena de forma ascendente (padrão).
  • DESC: Ordena de forma descendente.

Exemplo:

SELECT nome, idade FROM alunos ORDER BY idade DESC; 
Enter fullscreen mode Exit fullscreen mode

Essa consulta retorna todos os alunos, ordenados pela idade em ordem decrescente.


4. Agrupamento de Dados (GROUP BY)

O GROUP BY é usado para agrupar os dados com base em uma ou mais colunas. Ele é frequentemente usado com funções agregadas como COUNT, SUM, AVG, MIN e MAX.

Sintaxe:

SELECT coluna, COUNT(*) FROM tabela GROUP BY coluna; 
Enter fullscreen mode Exit fullscreen mode

Exemplo:

SELECT idade, COUNT(*) FROM alunos GROUP BY idade; 
Enter fullscreen mode Exit fullscreen mode

Essa consulta retorna a contagem de alunos para cada idade.

Funções Agregadas:

  • COUNT(*): Conta o número de registros.
  • SUM(coluna): Soma os valores de uma coluna.
  • AVG(coluna): Calcula a média dos valores de uma coluna.
  • MIN(coluna): Retorna o valor mínimo.
  • MAX(coluna): Retorna o valor máximo.

Exemplo com AVG:

SELECT AVG(idade) FROM alunos; 
Enter fullscreen mode Exit fullscreen mode

Isso retorna a média da idade dos alunos.


5. Joins (União de Tabelas)

Joins são usados para combinar dados de duas ou mais tabelas.

Tipos de JOIN:

  • INNER JOIN: Retorna apenas os registros que têm correspondência em ambas as tabelas.
  • LEFT JOIN (ou LEFT OUTER JOIN): Retorna todos os registros da tabela à esquerda, e os registros correspondentes da tabela à direita.
  • RIGHT JOIN (ou RIGHT OUTER JOIN): Retorna todos os registros da tabela à direita, e os registros correspondentes da tabela à esquerda.
  • FULL JOIN (ou FULL OUTER JOIN): Retorna registros quando há uma correspondência em qualquer uma das tabelas.

Sintaxe do INNER JOIN:

SELECT tabela1.coluna, tabela2.coluna FROM tabela1 INNER JOIN tabela2 ON tabela1.coluna_comum = tabela2.coluna_comum; 
Enter fullscreen mode Exit fullscreen mode

Exemplo de INNER JOIN:

SELECT alunos.nome, cursos.nome FROM alunos INNER JOIN cursos ON alunos.curso_id = cursos.id; 
Enter fullscreen mode Exit fullscreen mode

Isso retorna o nome do aluno e o nome do curso, fazendo a correspondência com base no curso_id do aluno e o id do curso.

Sintaxe do LEFT JOIN:

SELECT tabela1.coluna, tabela2.coluna FROM tabela1 LEFT JOIN tabela2 ON tabela1.coluna_comum = tabela2.coluna_comum; 
Enter fullscreen mode Exit fullscreen mode

6. Inserir Dados (INSERT INTO)

O INSERT INTO é usado para inserir dados em uma tabela.

Sintaxe:

INSERT INTO tabela (coluna1, coluna2, ...) VALUES (valor1, valor2, ...); 
Enter fullscreen mode Exit fullscreen mode

Exemplo:

INSERT INTO alunos (nome, idade, curso_id) VALUES ('João', 20, 1); 
Enter fullscreen mode Exit fullscreen mode

Esse comando insere um novo aluno chamado "João", com idade 20 e curso com curso_id 1.


7. Atualizar Dados (UPDATE)

O UPDATE é usado para modificar dados existentes em uma tabela.

Sintaxe:

UPDATE tabela SET coluna1 = valor1, coluna2 = valor2, ... WHERE condição; 
Enter fullscreen mode Exit fullscreen mode

Exemplo:

UPDATE alunos SET idade = 21 WHERE nome = 'João'; 
Enter fullscreen mode Exit fullscreen mode

Este comando atualiza a idade de João para 21.


8. Excluir Dados (DELETE)

O DELETE é usado para excluir registros de uma tabela.

Sintaxe:

DELETE FROM tabela WHERE condição; 
Enter fullscreen mode Exit fullscreen mode

Exemplo:

DELETE FROM alunos WHERE nome = 'João'; 
Enter fullscreen mode Exit fullscreen mode

Este comando exclui o registro do aluno chamado "João".


9. Criar Tabela (CREATE TABLE)

O CREATE TABLE é usado para criar uma nova tabela no banco de dados.

Sintaxe:

CREATE TABLE tabela ( coluna1 tipo_dado, coluna2 tipo_dado, ... ); 
Enter fullscreen mode Exit fullscreen mode

Exemplo:

CREATE TABLE alunos ( id INT PRIMARY KEY, nome VARCHAR(100), idade INT, curso_id INT ); 
Enter fullscreen mode Exit fullscreen mode

Esse comando cria uma tabela chamada alunos com as colunas id, nome, idade e curso_id.


10. Alterar Tabela (ALTER TABLE)

O ALTER TABLE é usado para modificar a estrutura de uma tabela existente.

Sintaxe para adicionar uma coluna:

ALTER TABLE tabela ADD coluna tipo_dado; 
Enter fullscreen mode Exit fullscreen mode

Exemplo:

ALTER TABLE alunos ADD email VARCHAR(100); 
Enter fullscreen mode Exit fullscreen mode

Esse comando adiciona a coluna email à tabela alunos.

Sintaxe para remover uma coluna:

ALTER TABLE tabela DROP COLUMN coluna; 
Enter fullscreen mode Exit fullscreen mode

Exemplo:

ALTER TABLE alunos DROP COLUMN email; 
Enter fullscreen mode Exit fullscreen mode

Conclusão

Esses são os principais conceitos e comandos do SQL para consultas e manipulação de dados em um banco de dados. Com essas habilidades, você pode começar a interagir com qualquer banco de dados relacional. Se precisar de mais exemplos ou explicações detalhadas, sinta-se à vontade para perguntar!

Top comments (0)