🧠 Explicação
O comando SELECT
é utilizado para pesquisar e recuperar dados armazenados nas tabelas do banco de dados DB2. Ele permite montar tabelas resultado conforme os critérios definidos, sendo o comando mais comum para consulta de dados. Pode ser usado com filtros, ordenações, funções, cálculos, junções entre tabelas, entre outros recursos.
🔧 Usos mais comuns
-
Buscar todos os registros de uma tabela.
-
Filtrar dados com cláusula
WHERE
. -
Ordenar resultados com
ORDER BY
. -
Eliminar duplicidade com
DISTINCT
. -
Realizar cálculos, agregações e agrupamentos.
-
Usar funções para manipular strings, datas e números.
-
Consultas com múltiplas condições lógicas (AND/OR).
🧾 Sintaxe
SELECT [DISTINCT] colunas
FROM tabela
[WHERE condição]
[ORDER BY coluna [ASC|DESC]];
💻 Exemplo prático
Selecionar todos os dados da tabela DEPT
:
SELECT * FROM DEPT;
Selecionar nome e salário dos empregados do departamento 20:
SELECT EMPNOME, EMPSALA
FROM EMP
WHERE DEPNUME = 20;
Selecionar nome do departamento e orçamento anual (mensal × 12), renomeando as colunas:
SELECT DEPNOME AS "DEPARTAMENTO", DEPORCA * 12 AS "ORÇAMENTO ANUAL"
FROM DEPT
WHERE DEPORCA > 100000;
Selecionar empregados com salário entre 1000 e 3000 ou que sejam vendedores:
SELECT EMPNOME, EMPSALA, EMPSERV
FROM EMP
WHERE EMPSALA BETWEEN 1000 AND 3000
OR EMPSERV = 'VENDEDOR';
📌 Regras
-
Aspas simples (
'
) são obrigatórias para valoresCHAR
,VARCHAR
eDATE
. -
O
*
seleciona todas as colunas da tabela. -
DISTINCT
remove registros duplicados do resultado. -
ORDER BY
define a ordenação (ASC é o padrão; DESC é decrescente). -
É possível aplicar apelidos com
AS
para tornar os nomes de colunas mais legíveis. -
Funções como
LOWER
,UPPER
,SUBSTRING
,NVL
e agregadores comoAVG
,SUM
são válidas nas expressões. -
Valores nulos precisam ser tratados com funções apropriadas (
NVL
,COALESCE
).
💡 Dicas
-
Sempre filtre os dados com
WHERE
para evitar retorno excessivo de registros. -
Use apelidos (
AS
) para deixar o resultado mais claro para o usuário. -
Utilize
JOIN
para combinar dados de múltiplas tabelas conforme chaves relacionadas. -
Cuidado com
NULL
: ele não é zero nem string vazia. -
Use
EXPLAIN PLAN
para analisar o desempenho da consulta, se disponível no ambiente.
✅ Conclusão
O comando SELECT
é a base de toda consulta em bancos relacionais. Sua flexibilidade permite desde buscas simples até relatórios complexos com cálculos, filtros, ordenações e agrupamentos. Dominar o SELECT
é essencial para qualquer programador que trabalha com DB2 — seja em batch ou online, COBOL ou SQL puro.