Em um SGBDR (Sistema de Gerenciamento de Banco de Dados Relacionais), as tabelas se relacionam por meio de chaves. O SGBD é muito utilizado em prontuário eletrônico da pessoa (PEP), por exemplo.
Structured Query Language (SQL) é a linguagem padrão universal para manipular bancos de dados (BD) e extrair informações dos dados alocados em diversas tabelas.
Nestes estudos, uso o MySQL Workbench, ferramenta open source de gerenciamento de banco de dados.
Cláusula SELECT: permite selecionar colunas de uma ou mais tabelas e assim extrair delas os dados de interesse.
SELECT select_list
FROM table_name;
Ao executar a instrução SELECT, o MySQL avalia a cláusula FROM antes da cláusula SELECT. E toda consulta termina com ponto e vírgula (;). SQL é uma linguagem com muitos dialetos (Oracle, Microsoft, etc). Neste estudo, a sintaxe é do MySQL.
Então, sigamos este raciocínio: de qual tabela, eu quero extrair dado(s) contido(s) na(s) coluna(s) X, Y, Z, etc?
Ao exercício:
A partir do banco “healthcare” com dados fictícios, usa-se a instrução MySQL SELECT para recuperar dados de uma única coluna
SELECT description FROM healthcare.allergies;
Usando a instrução MySQL SELECT para consultar dados de várias colunas (ou campos ou atributos) de uma tabela (ou entidade).
SELECT * FROM healthcare.patients;
SELECT First AS nome, Last AS sobrenome
FROM Patients LIMIT 3;
nome | sobrenome | |
---|---|---|
José Eduardo181 | Gómez206 | |
Milo271 | Feil794 | |
Jayson808 | Fadel536 |
Outro exemplo:
SELECT start, code, description FROM healthcare.allergies;
Usando a instrução MySQL SELECT para recuperar dados de todas as colunas
SELECT * FROM healthcare.allergies;
START | STOP | PATIENT | ENCOUNTER | CODE | DESCRIPTION | |
---|---|---|---|---|---|---|
1982-10-25 | 76982e06-f8b8-4509-9ca3-65a99c8650fe | b896bf40-8b72-42b7-b205-142ee3a56b55 | 300916003 | Latex allergy | ||
1982-10-25 | 76982e06-f8b8-4509-9ca3-65a99c8650fe | b896bf40-8b72-42b7-b205-142ee3a56b55 | 300913006 | Shellfish allergy | ||
2002-01-25 | 71ba0469-f0cc-4177-ac70-ea07cb01c8b8 | 7be1a590-4239-4826-9872-031327f3c368 | 419474003 | Allergy to mould |
Pode-se ter uma instrução SELECT sem a cláusula FROM assim:
SELECT 1 + 1;
2 |
Pode-se usar a instrução SELECT para executar funções.
SELECT NOW(); // a função NOW retorna data e hora atual
NOW() | |
---|---|
2022-06-18 10:44:33 |
Se uma função tem parâmetros, é precisa passar argumentos para ela.
SELECT CONCAT(‘João’,’ ‘,’Baptista’) AS ‘paciente’; /* renomeia como “paciente” temporariamente a tabela “concat” */
paciente | |
---|---|
João Baptista |
Com o ‘AS’ a coluna que é o nome da função foi rebatizada. Isto porque utilizar ‘alias’ (AS) em consultas SQL pode ser bastante conveniente, pois servem para renomear um campo (coluna) ou uma tabela temporariamente.
Quadro sinótico:
A instrução SELECT é provavelmente a cláusula mais comumente usada em SQL porque recupera dados do banco de dados.
SELECT o quê
FROM em qual tabela do BD
WHERE com este(s) critério(s) ou filtro(s)
Como citar:
Cruz, Isabel SQL: meu estudo sobre SELECT. NEPAE/UFF. Niterói, 19/06/2022. Disponível em https://nepae.uff.br/?p=2418