Manual MyTable

MySQL • Editor SQL (consultas avançadas)

Use o Editor SQL para escrever e executar comandos SQL diretamente no MySQL. É ideal para consultas complexas (múltiplos JOINs, subconsultas, CTEs em MySQL 8+), ajustes pontuais e diagnósticos de performance com EXPLAIN. O editor oferece histórico, favoritos e (quando disponível) realce de sintaxe/auto-complete.


Abrir o Editor SQL

  1. Conecte-se à sua conexão MySQL e selecione o database.
  2. No menu principal, toque em Editor SQL.
  3. (Opcional) Defina o schema padrão para resolver objetos sem prefixo.

Dica: Para consultas simples e paginadas, você pode preferir MySQL • Executar SELECT. O Editor SQL dá liberdade total.


Escrever e executar

  • Digite seu SQL no painel; separe múltiplos comandos com ;.
  • Toque em Executar para rodar a seleção atual ou todo o texto (conforme a UI).
  • Resultados de SELECT aparecem em grade, com paginação e opção de exportar (quando suportado).

Comandos comuns

  • SELECT com JOIN/WHERE/GROUP BY/HAVING/ORDER BY.
  • CTE (WITH …) — disponível no MySQL 8+.
  • EXPLAIN / EXPLAIN ANALYZE (8.0.18+) para entender o plano de execução.
  • DDL (CREATE/ALTER/DROP) — use com cuidado; telas guiadas existem para as rotinas mais comuns.
  • DML (INSERT/UPDATE/DELETE) — para operações assistidas veja CRUD.

Boas práticas de execução

  • Comece com LIMIT em tabelas grandes; remova gradualmente.
  • Confirme filtros antes de rodar UPDATE/DELETE (faça o mesmo SELECT primeiro).
  • Use transações em alterações sensíveis: START TRANSACTION, depois COMMIT ou ROLLBACK.
  • Em produção, evite consultas pesadas no pico; priorize índices adequados.

Diagnóstico com EXPLAIN

O EXPLAIN mostra como o otimizador pretende acessar seus dados (índices, junções, custos). Use-o para validar se um índice está sendo usado ou se há full table scan inesperado.

  • Crie/ajuste índices em MySQL • Índices conforme o padrão de filtros.
  • Verifique cardinalidade e estatísticas; se necessário, rode Analyze.

Recursos de produtividade

  • Histórico de consultas executadas (veja também Histórico & Favoritos).
  • Favoritos: salve trechos frequentes com nome e descrição.
  • Parâmetros (quando suportado): crie queries reutilizáveis com placeholders.

Exemplos úteis

  • Paginação: LIMIT 50 OFFSET 0 (ou LIMIT 0,50); combine com ORDER BY.
  • Filtros por período: padronize datas (YYYY-MM-DD) e garanta índice na coluna de data.
  • JSON (MySQL 8+): funções como JSON_EXTRACT, JSON_CONTAINS; avalie índices funcionais quando aplicável.
  • FULLTEXT: MATCH(col) AGAINST('termos' IN NATURAL LANGUAGE MODE) em colunas de texto com índice FULLTEXT.

Transações

  • Comece com START TRANSACTION (ou BEGIN), execute os DMLs e finalize com COMMIT.
  • Se algo sair errado, use ROLLBACK. Evite transações longas que seguram locks.

Erros comuns (e soluções)

“Unknown column / table doesn't exist”

  • Cheque o schema selecionado ou qualifique com database.tabela.

“You have an error in your SQL syntax”

  • Revise vírgulas, parênteses, aliases e compatibilidade de versão (CTE/JSON exigem MySQL 8+).

“Lock wait timeout exceeded / Deadlock found”

  • Refaça com filtros mais seletivos, em menor lote, ou fora do pico; isole em transações curtas.

“Query lenta”

  • Use EXPLAIN, crie/ajuste índices, evite SELECT *, reduza o dataset com WHERE.

Ferramentas relacionadas

Voltar: MySQL • CRUD • Relacionado: Editor SQL (atalho geral)