Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Principais consultas comuns do MySQL


As consultas do MySQL geralmente são escritas uma vez e, em seguida, agrupadas em funções de classe para minimizar a repetição de código. Este artigo lista as 10 consultas usadas com mais frequência no MySQL.

Uma consulta é essencialmente uma solicitação de informações a serem recuperadas de uma tabela de banco de dados ou de uma combinação de tabelas. Existem muitas linguagens de consulta que podem ser escritas para executar uma variedade de consultas simples a complexas. As consultas filtrarão determinados critérios com base nos dados específicos solicitados. Ele também pode automatizar tarefas de gerenciamento de dados e realizar cálculos. Este guia discute as 10 consultas MySQL mais comuns.

Vamos usar esses bancos de dados de demonstração para nos ajudar a entender melhor como cada consulta funciona.
Código Funcionário Nome Título
1002 Webster W. Executivo
1003 Lizzy S. Gerente
1004 Oliver T. Engenheiro de software
Código Funcionário Departamento Idade
1002 RH 36
1003 Vendas 21
1004 TI 39

SELECIONAR tudo 


Uma consulta SELECT simples é usada para buscar e enviar de volta todos os dados de um banco de dados. Sua sintaxe pode ser escrita como tal;

Código:
SELECT *
FROM Employees;

Resultado:
1002       Webster W.     Executive
1003       Lizzy S.       Manager
1004       Oliver T.      Software Engineer

Para selecionar todas as colunas disponíveis na tabela, você deve usar “*” para indicar que precisa de todas as informações possíveis devolvidas. Em segundo lugar, indique a palavra-chave FROM para receber dados da tabela do banco de dados. Por fim, lembre-se sempre de terminar sua declaração com um ponto e vírgula “;” para completar o pedido corretamente.

SELECIONAR coluna


Para obter dados de uma(s) coluna(s) específica(s) e não de tudo, basta indicar o nome do campo em vez de usar o asterisco(*).

Código:
SELECT Title
FROM Employees;

Resultado:
Title
Executive
Manager
Software Engineer

Ao selecionar várias colunas de um banco de dados, elas devem ser separadas por uma vírgula. Igual a;
SELECT Title, Name
FROM Employees;

cláusula WHERE


Ao utilizar a cláusula WHERE em uma consulta SELECT, os registros de dados serão filtrados e, em seguida, extrai os registros que correspondem à(s) condição(ões) como resultado.

Código:
SELECT *
FROM Employees
WHERE EmployeeID = 1004 ;

Resultados:
1004       Oliver T.          Software Engineer 

A cláusula WHERE pode ter mais de uma condição que pode ser separada usando a palavra-chave AND.

CRIAR Tabela 


Essa consulta pode ser usada para gerar uma nova tabela com sua escolha de colunas preferida. Ao adicionar nomes de coluna, certifique-se de especificar seu tipo de dados.

Código:
CREATE TABLE EmployeeInfo (

EmployeeId INT,
Department VARCHAR(25),
Age NUMBER

);

Resultados Esperados da Tabela:
EmployeeID
Department
Department
NULL
NULL
NULL

Depois de executar o comando CREATE TABLE e preenchê-lo com títulos de coluna, a consulta acima cria uma tabela “EmployeeInfo” no banco de dados. Essencialmente, cada coluna retornará NULL porque não inserimos nenhum valor específico. Isso nos leva à nossa próxima consulta, INSERT INTO.

INSERIR NA consulta 


Esta é a consulta mais comum para inserir valores em uma ou mais linhas de novos registros em uma tabela. Podemos preencher a tabela EmployeeInfo com alguns dados de exemplo;

Código:
INSERT INTO EmployeeInfo (EmployeeID,Department,Age)
VALUES 
(1002, HR , 46),
(1003, Finance , 28),
(1004, IT , 39);

Resultados da Tabela:

Informações do funcionário
EmployeeID
Department
Age
1002
HR
46
1003
Finance
28
1004
IT
39

Ao escrever uma consulta INSERT INTO, o comando VALUES deve fazer parte da instrução completa.

Atualizar consulta


Esta palavra-chave é usada para alterar uma ou mais colunas existentes em uma tabela. O uso dessa consulta atualizará os registros da tabela com novos dados com base em alguma condição.

Informações do funcionário
EmployeeID
Department
Age
1002
HR
36
1003
Sales
21
1004
IT
39



Código:
UPDATE EmployeeInfo
SET Age = 22
WHERE EmployeeID = 1003;

Resultados da Tabela:

Informações do funcionário
EmployeeID
Department
Age
1002
HR
36
1003
Sales
22
1004
IT
39

Seguindo o comando UPDATE, use a palavra-chave SET para sempre especificar qual(is) coluna(s) você escolhe modificar e, em seguida, indique exatamente ONDE você precisa que os dados atualizados sejam aplicados.

EXCLUIR DA consulta


Para remover registros de uma tabela com base em uma ou várias condições, você precisaria usar a instrução DELETE FROM. Ao usar condições, ele limita o número de linhas afetadas pela consulta.

Código:
DELETE FROM Employees
WHERE Name = ‘Lizzy’;

Resultados da Tabela:

Funcionários
EmployeeID
Name
Title
1002
Webster W.
Executive 
1004
Oliver T.
Software Engineer 

Conforme abordado anteriormente no artigo; usar a condição WHERE determina exatamente onde você solicita que os dados sejam filtrados e executados. Essa consulta é para excluir todos os registros da tabela de Funcionários que correspondam ao nome  "Lizzy".

Usando GROUP BY, HAVING cláusula 


A cláusula GROUP BY é quase sempre usada com funções agregadas. O uso dessa palavra-chave agrupará o conjunto de resultados por uma ou mais colunas.

A palavra-chave HAVING é usada para filtrar esse conjunto de resultados. Idealmente, você pensaria que uma cláusula WHERE seria colocada em prática, no entanto, a cláusula HAVING introduz uma condição nas agregações.

Informações do funcionário
EmployeeID
Department
Age
1002
HR
36
1003
Sales
21
1004
IT
39



Código:
SELECT COUNT(Age), EmployeeID
FROM EmployeeInfo
GROUP BY EmployeeID
HAVING COUNT(Age) > 21;

Resultados:
COUNT(Age)  EmployeeID
39   1004
36   1002  

Funções agregadas (SUM, AVG e COUNT)


Existem três funções agregadas extremamente comuns que permitem que os dados de uma tabela sejam interpretados ou executados cálculos.
  • COUNT:retorna o número de linhas que corresponde a uma coluna especificada.
  • AVG: retorna o valor médio de uma coluna
  • SOMA:retorna a soma de todos os valores em uma coluna selecionada.

Informações do Funcionário
Código Funcionário Departamento Idade
1002 RH 36
1003 Vendas 21
1004 TI 39



Código para COUNT:
SELECT 
COUNT(Department)
FROM EmployeeInfo;

Resultados:
COUNT(Department):
3



Código para AVG:
SELECT AVG(Age)
FROM EmployeeInfo;

Resultados:
AVG(Age):
32



Código para SOMA
SELECT SUM(Age)
FROM EmployeeInfo;

Resultados:
SUM(Age):
96


JUNTOS


As junções são usadas para reunir linhas de pelo menos duas tabelas, com base em uma coluna relacionada entre as tabelas. As junções mais comuns são INNER, FULL e LEFT.
  • INNER Join – combina as linhas de diferentes tabelas se a condição de junção for verdadeira.
  • FULL Join – retorna todas as linhas quando há uma correspondência nos registros da tabela à esquerda ou à direita.
  • LeFT Join – recupera todas as linhas da tabela da esquerda e os registros correspondentes da tabela da direita.

Funcionários - Tabela #1 (Esquerda)
Código Funcionário Nome Título
1002 Webster W. Executivo 
1003 Lizzy S. Gerente
1004 Oliver T. Engenheiro de software 



EmployeeInfo - Tabela #2 (Direita)
Código Funcionário Departamento Idade
1002 RH 36
1003 Vendas 21
1004 TI 39



Código INNER JOIN:
SELECT Employees.Title, EmployeeInfo.Department
FROM Employees 
INNER JOIN EmployeeInfo 
ON Employees.EmployeeID = Employees.EmployeeID;

Resultados:
Title          Department
Executive      HR     
Manager        Sales     
Software       Engineer  IT



Código FULL JOIN:
SELECT * 
FROM Employees  
FULL JOIN EmployeeInfo  
ON Employees.EmployeeID = Employees.EmployeeID;

Resultados:

Pegará todas as linhas e colunas de ambas as tabelas, incluindo duplicatas, e as combinará em uma tabela inteira.

Código LEFT JOIN:
SELECT Employees.Name, EmployeeInfo.Age
FROM Employees  
LEFT JOIN EmployeeInfo  
ON Employees.EmployeeID = Employees.EmployeeID;

Resultados:
Name              Age
Webster W.        36    
Lizzy S.          21   
Oliver T.         39

A coluna “EmployeeID” na tabela “Employee” refere-se ao “EmployeeID” na tabela “EmployeeInfo”, essencialmente afirmando que a coluna EmployeeID é o relacionamento entre as duas tabelas. As junções podem se tornar complicadas, mas ao mesmo tempo extremamente úteis ao classificar em um banco de dados maior.


O usuário e o banco de dados são capazes de trocar informações com sucesso basicamente falando a mesma língua. As consultas listadas acima são as mais usadas por iniciantes e especialistas. Escrever consultas MySQL é considerada a função mais frequente no domínio do gerenciamento de banco de dados.

Este artigo foi revisado e atualizado em abril de 2022 por Kelsey Perkins.