Conversor de Consultas SQL para MongoDB
Converta consultas SQL (SELECT, INSERT, UPDATE, DELETE) para a sintaxe do shell MongoDB com mapeamento cláusula a cláusula, geração de pipeline de agregação, destaque de sintaxe em tempo real e saída pronta para colar no mongosh.
Seu bloqueador de anúncios está impedindo a exibição de anúncios
O MiniWebtool é gratuito graças aos anúncios. Se esta ferramenta ajudou você, apoie-nos indo para o Premium (sem anúncios + ferramentas mais rápidas) ou coloque MiniWebtool.com na lista de permissões e recarregue a página.
- Ou faça upgrade para o Premium (sem anúncios)
- Permita anúncios para MiniWebtool.com e recarregue
Conversor de Consultas SQL para MongoDB
Bem-vindo ao Conversor de Consultas SQL para MongoDB, uma ferramenta online que traduz consultas SQL — SELECT, INSERT, UPDATE e DELETE — em sintaxe limpa e pronta para colar no shell do MongoDB. Cada conversão é acompanhada por um mapeamento cláusula por cláusula que mostra exatamente como cada palavra-chave SQL se torna seu equivalente no MongoDB, tornando esta ferramenta tanto um conversor quanto um auxílio de aprendizado para desenvolvedores que estão migrando de bancos de dados relacionais para o MongoDB.
Por que usar este Conversor de SQL para MongoDB?
A maioria dos conversores online simplesmente entrega um bloco JSON e deixa você adivinhar o que aconteceu. Esta ferramenta é diferente: você vê a consulta MongoDB gerada e um mapeamento passo a passo que explica por que cada cláusula foi transformada daquela maneira. Isso a torna igualmente útil para traduções rápidas durante migrações e para aprender a linguagem de consulta do MongoDB a partir do seu conhecimento existente em SQL.
Principais Recursos
- Quatro tipos de instruções: SELECT (find, distinct, countDocuments, aggregate), INSERT, UPDATE, DELETE — tudo em uma única ferramenta.
- Mapeamento cláusula por cláusula: veja como FROM, WHERE, GROUP BY, HAVING, ORDER BY, LIMIT, OFFSET se transformam em operadores do MongoDB.
- Pipelines de agregação automática: GROUP BY, HAVING e funções de agregação produzem pipelines aggregate([...]) adequados com estágios $match, $group, $sort e $limit na ordem correta.
- Suporte rico a WHERE: AND, OR, NOT, parênteses, IN, NOT IN, BETWEEN, LIKE, IS NULL, IS NOT NULL e todos os seis operadores de comparação.
- Saída com realce de sintaxe: fácil de ler, para colar diretamente no mongosh, MongoDB Compass ou Studio 3T.
- Guia de referência de operadores: cartão de referência sempre visível com 24 mapeamentos comuns de SQL ↔ MongoDB.
- Exemplos de carregamento rápido: nove exemplos do mundo real, a um clique de distância.
- Copiar e baixar: cópia com um clique para a área de transferência ou salvar como um arquivo .js.
- Pronto para dispositivos móveis: o layout se adapta a celulares e tablets — o painel de mapeamento se reajusta verticalmente em telas estreitas.
Quais instruções SQL este conversor pode traduzir para MongoDB?
A ferramenta converte instruções SELECT, INSERT, UPDATE e DELETE. O SELECT suporta WHERE, ORDER BY, GROUP BY, HAVING, LIMIT, OFFSET, DISTINCT e as cinco funções de agregação padrão: COUNT, SUM, AVG, MIN e MAX. Cláusulas WHERE complexas com AND, OR, NOT, IN, NOT IN, BETWEEN, LIKE, IS NULL e IS NOT NULL são mapeadas de forma limpa para operadores do MongoDB.
Como funciona o mapeamento cláusula por cláusula?
Após cada conversão, a ferramenta mostra uma tabela que alinha cada cláusula SQL com seu equivalente no MongoDB. Por exemplo:
MongoDB: db.users.find({ age: { $gt: 21 } }, { name: 1, age: 1, _id: 0 }).sort({ age: -1 }).limit(10)
Mapeamento:
· FROM users → db.users
· SELECT name, age → projeção { name: 1, age: 1, _id: 0 }
· WHERE age > 21 → filtro { age: { $gt: 21 } }
· ORDER BY age DESC → .sort({ age: -1 })
· LIMIT 10 → .limit(10)
Ele lida com pipelines de agregação para consultas GROUP BY?
Sim. Quando o SQL usa GROUP BY, HAVING ou funções de agregação, o conversor produz um pipeline de agregação completo do MongoDB: $match antes do agrupamento (do WHERE), $group com _id e acumuladores, $match após o agrupamento (do HAVING), seguidos por $sort, $skip e $limit na ordem do pipeline. A ordem importa — realizar o $sort antes do $match é muito mais lento no MongoDB — por isso a ferramenta sempre emite os estágios na ordem ideal.
torna-se:
db.books.aggregate([
{ $match: { year: { $gte: 2020 } } },
{ $group: { _id: "$category", total: { $sum: 1 } } },
{ $match: { total: { $gt: 5 } } },
{ $sort: { total: -1 } },
{ $limit: 5 }
])
Como os padrões LIKE do SQL são convertidos?
Curingas % do SQL tornam-se .* e curingas _ tornam-se . em uma expressão regular do MongoDB. Os padrões são ancorados com ^ ou $ quando o padrão SQL não começa ou termina com %. Caracteres especiais de regex dentro do padrão são escapados automaticamente.
- LIKE 'abc%' → /^abc.*//span>
- LIKE '%.com' → /.*\.com$/
- LIKE '%widget%' → /.*widget.*/
- LIKE 'a_c' → /^a.c$/
Quais são as principais diferenças entre consultas SQL e MongoDB?
O SQL é declarativo e orientado a tabelas — você descreve linhas e colunas. O MongoDB é orientado a documentos e usa uma linguagem de consulta semelhante ao JSON. As principais regras de tradução:
- Tabelas → coleções. FROM users torna-se db.users.
- Linhas → documentos. Uma linha SQL com colunas name, age, email torna-se um documento MongoDB com esses nomes de campos.
- WHERE → objeto de filtro. O primeiro argumento do MongoDB para find() é um documento de filtro, usando operadores como $gt, $in, $and.
- Lista SELECT → projeção. O segundo argumento de find() especifica quais campos incluir (1) ou excluir (0). O campo _id é incluído por padrão, a menos que você o defina como 0.
- ORDER BY → .sort(), LIMIT → .limit(), OFFSET → .skip(). Estes tornam-se chamadas de métodos encadeadas após find().
- GROUP BY → $group. Agregações que reduzem muitas linhas a uma só são executadas dentro de um pipeline de agregação.
- JOIN → $lookup. Joins SQL são mapeados para o estágio $lookup na agregação. (Esta ferramenta foca atualmente em consultas de tabela única; joins são exibidos como sugestão quando detectados.)
A consulta MongoDB gerada está pronta para ser colada no mongosh?
Sim. A saída usa a sintaxe do mongosh (MongoDB Shell), incluindo chaves de objeto sem aspas, métodos de encadeamento como .sort(), .limit() e .skip(), e literais de regex nativos do JavaScript. Você pode colá-la diretamente no mongosh, na guia MongoSH do MongoDB Compass ou no IntelliShell do Studio 3T.
Como usar esta ferramenta
- Cole sua consulta SQL na caixa de entrada ou clique em um Exemplo Rápido para carregar uma consulta de amostra.
- Clique em Converter para MongoDB. A ferramenta analisa seu SQL e constrói a consulta MongoDB equivalente.
- Revise o mapeamento cláusula por cláusula para verificar a tradução e aprender as regras de mapeamento.
- Copie ou baixe a consulta MongoDB usando os botões no topo do bloco de código. O arquivo baixado é um script .js pronto para ser executado.
Casos de Uso Práticos
Para desenvolvedores migrando para o MongoDB
- Portar relatórios SQL legados para pipelines de agregação do MongoDB.
- Traduzir consultas SQL de documentações, respostas do Stack Overflow ou guias de design de esquema.
- Gerar consultas base do MongoDB que você pode otimizar posteriormente com índices e projeções.
Para estudantes e aprendizes
- Compreender o mapeamento entre duas linguagens de consulta fundamentalmente diferentes.
- Desenvolver a intuição para o modelo de documento do MongoDB partindo do SQL que você já conhece.
- Usar o guia de referência de operadores como uma consulta rápida ao escrever consultas MongoDB do zero.
Para DBAs e engenheiros de backend
- Verificar rapidamente a validade de consultas MongoDB candidatas durante a revisão de pull requests.
- Prototipar consultas durante migrações de esquema antes de executá-las em dados de produção.
- Compartilhar o mapeamento de cláusulas como material didático com membros juniores da equipe.
Limitações e o que ainda não é suportado
- JOINs — Os equivalentes de JOIN no MongoDB exigem estágios $lookup com decisões de design de chave estrangeira que um conversor estático nem sempre pode inferir. Por enquanto, converta consultas de tabela única e envolva-as manualmente em $lookup quando necessário.
- Subconsultas — Subconsultas escalares e correlacionadas não são analisadas. Tente decompô-las em duas consultas separadas.
- CTEs / cláusulas WITH — Não suportado; extraia o CTE em uma consulta independente primeiro.
- UNION / UNION ALL — Use $unionWith manualmente.
- Funções de janela (Window functions) — Use $setWindowFields no MongoDB 5.0+.
- Expressões SET complexas — Valores de UPDATE devem ser literais; aritmética como SET x = x + 1 precisa do operador $inc do MongoDB, que você adiciona manualmente.
Perguntas Frequentes
Por que minha consulta SELECT sem WHERE ainda retorna um objeto de filtro?
O find() do MongoDB espera um filtro como primeiro argumento. Quando o SQL não tem cláusula WHERE, a ferramenta emite find({}) — um filtro vazio que corresponde a todos os documentos.
Por que _id: 0 foi adicionado à minha projeção?
O MongoDB inclui o campo _id por padrão nos resultados da consulta. Para corresponder ao comportamento do SELECT do SQL, onde apenas as colunas listadas são retornadas, a ferramenta anexa _id: 0, a menos que você liste explicitamente _id como uma coluna.
Devo usar updateOne ou updateMany para minha consulta UPDATE?
A ferramenta emite updateMany por padrão, o que corresponde à semântica de múltiplas linhas do UPDATE SQL. Alterne para updateOne quando tiver certeza de que o filtro corresponde a um único documento (por exemplo, ao filtrar por um _id exclusivo).
A ferramenta armazena ou envia meu SQL para algum lugar?
Seu SQL é enviado ao nosso servidor para análise, retornado como MongoDB convertido e depois descartado. Ele não é registrado, armazenado ou compartilhado com terceiros.
A ferramenta é gratuita?
Sim, é completamente gratuita e utilizável sem uma conta. Recarregue a página para recomeçar a qualquer momento.
Como isso lida com tipos nativos do MongoDB como ObjectId e Date?
Literais de string SQL tornam-se strings MongoDB por padrão. Se sua coluna armazena um ObjectId, envolva o literal manualmente em ObjectId("..."). Para campos de data, envolva o literal em ISODate("..."). Ambas as substituições levam apenas um segundo para editar após colar.
Recursos Adicionais
- Referência Oficial de Comparação SQL do MongoDB
- Operadores de Consulta do MongoDB
- Guia de Pipeline de Agregação do MongoDB
- SQL - Wikipédia
- MongoDB - Wikipédia
Cite este conteúdo, página ou ferramenta como:
"Conversor de Consultas SQL para MongoDB" em https://MiniWebtool.com/br/conversor-de-consultas-sql-para-mongodb/ de MiniWebtool, https://MiniWebtool.com/
pela equipe miniwebtool. Atualizado: 25 de abr de 2026
Outras ferramentas relacionadas:
Outras ferramentas textuais:
- Gerador de Anagramas Em Destaque
- Conversor de Leitura Biônica Novo
- Comparar duas strings
- Encontre a Linha Mais Longa
- Detector de Idioma por IA Em Destaque
- Processador de Linha de Texto
- Validador de XML Em Destaque
- Leitor de Texto para Fala Novo
- Extrator de Coluna de Texto Novo
- Conversor JSON para YAML Novo
- Testador de Regex Novo
- Verificador de Diferenças Novo
- Conversor de CSV para JSON Novo
- Conversor de Imagem para Base64 Novo
- Testador de API Novo
- Tabela ASCII Novo
- Testador de Webhook Novo
- Gerador de Títulos de Blog com IA Novo
- Gerador de Hashtags com IA Novo
- Gerador de Slogans com IA Novo
- Gerador de Esboço de Artigo com IA Novo
- Bloco de Notas Online Novo
- Conversor de TOML para JSON Novo
- Conversor de JSON para CSV Novo
- Conversor de XML para JSON Novo
- Conversor de Consultas SQL para MongoDB Novo