Informática · Concurso PF

Noções de linguagem SQL (DDL, DML, SELECT e JOIN)

3 min de leitura5 flashcards8 questões

Cai no edital de: Agente PF, Escrivão PF, Papiloscopista PF

Resumo: Noções de linguagem SQL (DDL, DML, SELECT e JOIN)

Essência. SQL (Structured Query Language) é a linguagem declarativa padrão (ISO/ANSI) dos bancos relacionais: diz o que se quer, não como buscar. Divide-se em sublinguagens:

  • DDL (definição): CREATE, ALTER, DROP, TRUNCATE → mexem na estrutura.
  • DML (manipulação): INSERT, UPDATE, DELETE (e SELECT, às vezes separado como DQL) → mexem nos dados.
  • DCL (controle): GRANT, REVOKE → permissões.
  • DTL/TCL (transação): COMMIT, ROLLBACK, SAVEPOINT.

SELECT — ordem de escrita: SELECT colunas FROM tabela WHERE filtro de linhas GROUP BY agrupamento HAVING filtro de grupos ORDER BY ordenação. Ordem lógica de execução: FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY.

  • Agregação: COUNT, SUM, AVG, MIN, MAX. COUNT(*) conta linhas; COUNT(coluna) ignora nulos.
  • JOIN: INNER (só correspondências), LEFT (todas da esquerda + correspondências, nulos onde não há), RIGHT, FULL.
  • Nulo: testa-se com IS NULL, nunca = NULL.

Pegadinha Cebraspe. "O comando DELETE remove a tabela do banco" → errado: DELETE apaga linhas; quem remove a tabela é DROP. DELETE sem WHERE apaga todas as linhas, mas a tabela continua.

Visão geral

Basta ler consultas simples e prever o resultado. Os itens mais cobrados: categorias de comando, diferença WHERE × HAVING, tipos de JOIN, DISTINCT e tratamento de nulos.

Regra

SELECT uf, COUNT(*) AS total
FROM ocorrencias
WHERE ano = 2025
GROUP BY uf
HAVING COUNT(*) > 100
ORDER BY total DESC;

Lê-se: das ocorrências de 2025, conte por UF, mostre só as UFs com mais de 100 e ordene da maior para a menor.

ComandoCategoriaEfeito
CREATE TABLEDDLCria tabela
ALTER TABLEDDLAltera estrutura
DROP TABLEDDLRemove tabela e dados
TRUNCATEDDLEsvazia a tabela (mantém estrutura)
INSERT / UPDATE / DELETEDMLInclui / altera / exclui linhas
GRANT / REVOKEDCLConcede / retira permissão
COMMIT / ROLLBACKDTLConfirma / desfaz transação

Pontos-chave

  • WHERE filtra linhas antes do agrupamento e não aceita função de agregação; HAVING filtra grupos.
  • DISTINCT elimina linhas repetidas do resultado.
  • LIKE: % = qualquer sequência; _ = um caractere. 'Jo%' pega João, Jonas.
  • IN, BETWEEN (inclusivo nas pontas), ORDER BY padrão crescente (ASC).
  • UNION remove duplicatas; UNION ALL mantém.
  • UPDATE sem WHERE altera todas as linhas.
  • Visão (VIEW): consulta armazenada que funciona como tabela virtual.

Como o Cebraspe cobra

  • "Os comandos CREATE, ALTER e DROP pertencem à DDL" → certo.
  • "A cláusula HAVING é usada para filtrar grupos formados pelo GROUP BY" → certo.
  • "Em um LEFT JOIN, só aparecem as linhas com correspondência nas duas tabelas" → errado (esse é o INNER JOIN).
  • "A condição WHERE coluna = NULL retorna os registros com valor nulo" → errado (usa-se IS NULL).
  • "TRUNCATE remove a estrutura da tabela" → errado (remove as linhas; a estrutura fica).

Mapa mental: Noções de linguagem SQL (DDL, DML, SELECT e JOIN)

0:00 / 0:00

Toque play para percorrer o mapa. Clique num card para ver de perto, no fundo para afastar; arraste para mover e use Ctrl/⌘ + roda do mouse (ou a pinça) para zoom.

Flashcards de Noções de linguagem SQL (DDL, DML, SELECT e JOIN)

Tente lembrar antes de virar o card.

  • Sublinguagens do SQL

    Revelar resposta

    DDL: CREATE, ALTER, DROP, TRUNCATE. DML: INSERT, UPDATE, DELETE (SELECT/DQL). DCL: GRANT, REVOKE. DTL: COMMIT, ROLLBACK.

  • WHERE × HAVING

    Revelar resposta

    WHERE filtra linhas antes do agrupamento; HAVING filtra grupos depois do GROUP BY.

  • DELETE × DROP

    Revelar resposta

    DELETE apaga linhas (sem WHERE, todas), a tabela continua. DROP remove a tabela.

  • COUNT(*) × COUNT(coluna)

    Revelar resposta

    COUNT(*) conta todas as linhas; COUNT(coluna) ignora nulos.

  • INNER JOIN × LEFT JOIN

    Revelar resposta

    INNER: só correspondências. LEFT: todas as linhas da esquerda, com nulos onde não há correspondência.

Questões de Noções de linguagem SQL (DDL, DML, SELECT e JOIN)

  1. Questão 1 · Agente PF · Certo ou Errado

    O comando DELETE, sem cláusula WHERE, remove a tabela do banco de dados.

    Revelar gabarito

    Gabarito: Errado

    Errado. DELETE apaga as linhas; a tabela continua. Quem remove a tabela é DROP.

  2. Questão 2 · Agente PF · Certo ou Errado

    GRANT e REVOKE pertencem à linguagem de controle de dados (DCL).

    Revelar gabarito

    Gabarito: Certo

    Certo. Tratam de permissões.

  3. Questão 3 · Agente PF · Certo ou Errado

    A cláusula HAVING é usada para filtrar grupos formados por GROUP BY.

    Revelar gabarito

    Gabarito: Certo

    Certo. WHERE filtra linhas; HAVING, grupos.

  4. Questão 4 · Agente PF · Certo ou Errado

    Para selecionar registros com valor ausente em uma coluna, usa-se a condição coluna = NULL.

    Revelar gabarito

    Gabarito: Errado

    Errado. Usa-se IS NULL.

  5. Questão 5 · Agente PF · Certo ou Errado

    Em um LEFT JOIN, as linhas da tabela à esquerda sem correspondência na outra tabela são descartadas do resultado.

    Revelar gabarito

    Gabarito: Errado

    Errado. No LEFT JOIN elas aparecem, com nulos nas colunas da direita.

Ver as 8 questões comentadas de Noções de linguagem SQL (DDL, DML, SELECT e JOIN)

Fontes

Concurso Agente PF · Grátis, sem cartão · Tudo do PRO liberado

Marque Noções de linguagem SQL (DDL, DML, SELECT e JOIN) como estudado e siga o plano

Este conteúdo é o mesmo do app. Lá dentro, o plano do dia diz o que estudar, revisar e resolver, e acompanha a sua nota até a prova.

  • Revisão espaçada do tópico no dia certo
  • As 8 questões com estatística de acerto
  • Caderno de erros e diagnóstico com IA
  • Simulados no tempo da prova
  • Nota projetada contra o corte

Estude Agente PF no app

Grátis, sem cartão · Tudo do PRO liberado

Começar grátis