Convertidor de Consultas SQL a MongoDB
Convierta consultas SQL (SELECT, INSERT, UPDATE, DELETE) a la sintaxis de la shell de MongoDB con mapeo cláusula por cláusula, generación de pipelines de agregación, resaltado de sintaxis en vivo y salida de mongosh lista para pegar.
Tu bloqueador de anuncios impide que mostremos anuncios
MiniWebtool es gratis gracias a los anuncios. Si esta herramienta te ayudó, apóyanos con Premium (sin anuncios + herramientas más rápidas) o añade MiniWebtool.com a la lista de permitidos y recarga la página.
- O pásate a Premium (sin anuncios)
- Permite anuncios para MiniWebtool.com y luego recarga
Convertidor de Consultas SQL a MongoDB
Bienvenido al Convertidor de Consultas SQL a MongoDB, una herramienta en línea que traduce consultas SQL (SELECT, INSERT, UPDATE y DELETE) a una sintaxis limpia y lista para pegar en la terminal de MongoDB. Cada conversión viene acompañada de un mapeo cláusula por cláusula que muestra exactamente cómo cada palabra clave SQL se convierte en su equivalente en MongoDB, convirtiendo esta herramienta tanto en un convertidor como en una ayuda de aprendizaje para desarrolladores que migran de bases de datos relacionales a MongoDB.
¿Por qué usar este convertidor de SQL a MongoDB?
La mayoría de los convertidores en línea simplemente arrojan un bloque JSON y te dejan adivinar qué sucedió. Esta herramienta es diferente: ves la consulta de MongoDB generada y un mapeo paso a paso que explica por qué cada cláusula se transformó de esa manera. Esto la hace igualmente útil para traducciones rápidas durante migraciones y para aprender el lenguaje de consulta de MongoDB a partir de tus conocimientos previos de SQL.
Características clave
- Cuatro tipos de sentencias: SELECT (find, distinct, countDocuments, aggregate), INSERT, UPDATE, DELETE — todo en una sola herramienta.
- Mapeo cláusula por cláusula: observa cómo FROM, WHERE, GROUP BY, HAVING, ORDER BY, LIMIT y OFFSET se transforman en operadores de MongoDB.
- Pipelines de agregación automáticos: GROUP BY, HAVING y las funciones de agregación generan pipelines aggregate([...]) adecuados con etapas $match, $group, $sort y $limit en el orden correcto.
- Soporte completo para WHERE: AND, OR, NOT, paréntesis, IN, NOT IN, BETWEEN, LIKE, IS NULL, IS NOT NULL y los seis operadores de comparación.
- Salida con resaltado de sintaxis: fácil de leer, para pegar directamente en mongosh, MongoDB Compass o Studio 3T.
- Guía rápida de operadores: tarjeta de referencia siempre visible con 24 mapeos comunes de SQL ↔ MongoDB.
- Ejemplos de carga rápida: nueve ejemplos del mundo real a un solo clic de distancia.
- Copiar y descargar: copia al portapapeles con un clic o guarda como un archivo .js.
- Listo para móviles: el diseño se adapta a teléfonos y tabletas; el panel de mapeo se apila verticalmente en pantallas estrechas.
¿Qué sentencias SQL puede traducir este convertidor a MongoDB?
La herramienta convierte sentencias SELECT, INSERT, UPDATE y DELETE. SELECT soporta WHERE, ORDER BY, GROUP BY, HAVING, LIMIT, OFFSET, DISTINCT y las cinco funciones de agregación estándar: COUNT, SUM, AVG, MIN y MAX. Las cláusulas WHERE complejas con AND, OR, NOT, IN, NOT IN, BETWEEN, LIKE, IS NULL e IS NOT NULL se mapean de forma limpia a los operadores de MongoDB.
¿Cómo funciona el mapeo cláusula por cláusula?
Después de cada conversión, la herramienta muestra una tabla que alinea cada cláusula SQL con su equivalente en MongoDB. Por ejemplo:
MongoDB: db.users.find({ age: { $gt: 21 } }, { name: 1, age: 1, _id: 0 }).sort({ age: -1 }).limit(10)
Mapeo:
· FROM users → db.users
· SELECT name, age → proyección { name: 1, age: 1, _id: 0 }
· WHERE age > 21 → filtro { age: { $gt: 21 } }
· ORDER BY age DESC → .sort({ age: -1 })
· LIMIT 10 → .limit(10)
¿Maneja pipelines de agregación para consultas GROUP BY?
Sí. Cuando el SQL utiliza GROUP BY, HAVING o funciones de agregación, el convertidor produce un pipeline de agregación de MongoDB completo: $match antes de agrupar (desde WHERE), $group con _id y acumuladores, $match después de agrupar (desde HAVING), luego $sort, $skip y $limit en el orden del pipeline. El orden importa; realizar un $sort antes de un $match es mucho más lento en MongoDB, por lo que la herramienta siempre emite las etapas en el orden óptimo.
se convierte en:
db.books.aggregate([
{ $match: { year: { $gte: 2020 } } },
{ $group: { _id: "$category", total: { $sum: 1 } } },
{ $match: { total: { $gt: 5 } } },
{ $sort: { total: -1 } },
{ $limit: 5 }
])
¿Cómo se convierten los patrones LIKE de SQL?
Los comodines % de SQL se convierten en .* y los comodines _ se convierten en . en una expresión regular de MongoDB. Los patrones se anclan con ^ o $ cuando el patrón SQL no comienza o termina con %. Los caracteres especiales de regex dentro del patrón se escapan automáticamente.
- LIKE 'abc%' → /^abc.*/
- LIKE '%.com' → /.*\.com$/
- LIKE '%widget%' → /.*widget.*/
- LIKE 'a_c' → /^a.c$/
¿Cuáles son las diferencias clave entre las consultas SQL y MongoDB?
SQL es declarativo y está orientado a tablas: describes filas y columnas. MongoDB está orientado a documentos y utiliza un lenguaje de consulta similar a JSON. Las reglas principales de traducción son:
- Tablas → colecciones. FROM users se convierte en db.users.
- Filas → documentos. Una fila SQL con las columnas name, age, email se convierte en un documento de MongoDB con esos nombres de campo.
- WHERE → objeto de filtro. El primer argumento de MongoDB para find() es un documento de filtro, utilizando operadores como $gt, $in, $and.
- Lista SELECT → proyección. El segundo argumento de find() especifica qué campos incluir (1) o excluir (0). El campo _id se incluye por defecto a menos que se establezca en 0.
- ORDER BY → .sort(), LIMIT → .limit(), OFFSET → .skip(). Estos se convierten en llamadas a métodos encadenados después de find().
- GROUP BY → $group. Las agregaciones que reducen muchas filas a una sola se ejecutan dentro de un pipeline de agregación.
- JOIN → $lookup. Las uniones SQL se mapean a la etapa $lookup en agregación. (Esta herramienta actualmente se enfoca en consultas de una sola tabla; los joins se muestran como una sugerencia cuando se detectan).
¿La consulta de MongoDB generada está lista para pegarse en mongosh?
Sí. La salida utiliza la sintaxis de mongosh (MongoDB Shell), incluyendo claves de objeto sin comillas, métodos encadenados finales como .sort(), .limit() y .skip(), y literales de regex nativos de JavaScript. Puedes pegarlo directamente en mongosh, la pestaña MongoSH de MongoDB Compass o el IntelliShell de Studio 3T.
Cómo usar esta herramienta
- Pega tu consulta SQL en el cuadro de entrada, o haz clic en un Ejemplo rápido para cargar una consulta de muestra.
- Haz clic en Convertir a MongoDB. La herramienta analiza tu SQL y construye la consulta de MongoDB equivalente.
- Revisa el mapeo cláusula por cláusula para verificar la traducción y aprender las reglas de mapeo.
- Copia o descarga la consulta de MongoDB usando los botones en la parte superior del bloque de código. El archivo descargado es un script .js listo para ejecutar.
Casos de uso prácticos
Para desarrolladores que migran a MongoDB
- Migra reportes SQL heredados a pipelines de agregación de MongoDB.
- Traduce consultas SQL de documentación, respuestas de Stack Overflow o guías de diseño de esquemas.
- Genera consultas base de MongoDB que luego puedes optimizar con índices y proyecciones.
Para estudiantes y aprendices
- Comprende el mapeo entre dos lenguajes de consulta fundamentalmente diferentes.
- Desarrolla intuición para el modelo de documentos de MongoDB comenzando desde el SQL que ya conoces.
- Usa la guía rápida de operadores como referencia rápida cuando escribas consultas de MongoDB desde cero.
Para DBAs e ingenieros de backend
- Realiza comprobaciones rápidas de consultas de MongoDB candidatas mientras revisas pull requests.
- Prototipa consultas durante migraciones de esquemas antes de ejecutarlas en datos de producción.
- Comparte el mapeo de cláusulas como material didáctico con los miembros más jóvenes del equipo.
Limitaciones y lo que aún no es soportado
- JOINs — Los equivalentes de JOIN en MongoDB requieren etapas $lookup con decisiones de diseño de claves foráneas que un convertidor estático no siempre puede inferir. Por ahora, convierte consultas de una sola tabla y envuélvelas manualmente en $lookup cuando sea necesario.
- Subconsultas — Las subconsultas escalares y correlacionadas no se analizan. Intenta descomponerlas en dos consultas separadas.
- CTEs / Cláusulas WITH — No soportadas; extrae primero el CTE en una consulta independiente.
- UNION / UNION ALL — Usa $unionWith manualmente.
- Funciones de ventana — Usa $setWindowFields en MongoDB 5.0+.
- Expresiones SET complejas — Los valores de UPDATE deben ser literales; aritmética como SET x = x + 1 necesita el operador $inc de MongoDB, que debes agregar manualmente.
Preguntas frecuentes
¿Por qué mi consulta SELECT sin WHERE sigue devolviendo un objeto de filtro?
El método find() de MongoDB espera un filtro como primer argumento. Cuando el SQL no tiene cláusula WHERE, la herramienta emite find({}): un filtro vacío que coincide con todos los documentos.
¿Por qué se añade _id: 0 a mi proyección?
MongoDB incluye el campo _id por defecto en los resultados de la consulta. Para coincidir con el comportamiento del SELECT de SQL, donde solo se devuelven las columnas listadas, la herramienta añade _id: 0 a menos que listes explícitamente _id como una columna.
¿Debo usar updateOne o updateMany para mi consulta UPDATE?
La herramienta emite updateMany por defecto, lo que coincide con la semántica de múltiples filas del UPDATE de SQL. Cambia a updateOne cuando estés seguro de que el filtro coincide con un solo documento (por ejemplo, al filtrar por un _id único).
¿La herramienta almacena o envía mi SQL a algún lugar?
Tu SQL se envía a nuestro servidor para su análisis, se devuelve como MongoDB convertido y luego se descarta. No se registra, almacena ni comparte con terceros.
¿Es gratuita la herramienta?
Sí, es completamente gratuita y utilizable sin necesidad de una cuenta. Refresca la página para empezar de nuevo en cualquier momento.
¿Cómo maneja esto los tipos nativos de MongoDB como ObjectId y Date?
Los literales de cadena de SQL se convierten en cadenas de MongoDB por defecto. Si tu columna almacena un ObjectId, envuelve el literal manualmente en ObjectId("..."). Para campos de fecha, envuelve el literal en ISODate("..."). Ambas ediciones toman solo un segundo después de pegar.
Recursos adicionales
- Referencia oficial de comparación SQL de MongoDB
- Operadores de consulta de MongoDB
- Guía de pipelines de agregación de MongoDB
- SQL - Wikipedia
- MongoDB - Wikipedia
Cite este contenido, página o herramienta como:
"Convertidor de Consultas SQL a MongoDB" en https://MiniWebtool.com/es/convertidor-de-consultas-sql-a-mongodb/ de MiniWebtool, https://MiniWebtool.com/
por el equipo de miniwebtool. Actualizado: 25 de abr. de 2026
Otras herramientas relacionadas:
Otras herramientas para texto:
- Generador de anagramas
- Convertidor de Lectura Biónica Nuevo
- Comparar dos cadenas
- Encontrar la línea más larga
- Detector de Idiomas con IA Destacado
- Procesador de líneas de texto
- Validador XML Destacado
- Lector de texto a voz Nuevo
- Extractor de Columnas de Texto Nuevo
- Convertidor JSON a YAML Nuevo
- Probador de Regex Nuevo
- Comparador de Diferencias Nuevo
- Convertidor de CSV a JSON Nuevo
- Convertidor de Imagen a Base64 Nuevo
- Probador de API Nuevo
- Tabla ASCII Nuevo
- Probador de Webhook Nuevo
- Generador de Títulos de Blog con IA Nuevo
- Generador de Hashtags con IA Nuevo
- Generador de eslóganes con IA Nuevo
- Generador de Esquemas de Artículos con IA Nuevo
- Bloc de Notas en Línea Nuevo
- Conversor de TOML a JSON Nuevo
- Convertidor de JSON a CSV Nuevo
- Conversor de XML a JSON Nuevo
- Convertidor de Consultas SQL a MongoDB Nuevo