Convertisseur SQL vers MongoDB Gratuit

Convertissez des requêtes SQL en syntaxe de requête MongoDB pour une migration et une utilisation de bases de données sans accroc. Gratuit, rapide et entièrement dans votre navigateur, sans inscription.

Mis à jour le

Share:
Home/Developer Tools/SQL to MongoDB Converter

SQL to MongoDB Converter

Convert SQL queries to MongoDB query syntax. Supports SELECT, INSERT, UPDATE, DELETE, JOINs, GROUP BY, and aggregations.

SQL Query

MongoDB Query
find()

db.users.find({ $and: [{ age: { $gt: 25 } }, { status: "active" }] }).sort({ name: 1 }).limit(10)

SQL to MongoDB Mapping Reference

Queries

  • SELECT → find()
  • SELECT DISTINCT → distinct()
  • INSERT → insertOne/Many()
  • UPDATE → updateOne/Many()
  • DELETE → deleteOne/Many()

Operators

  • = → : (equality)
  • > / < → $gt / $lt
  • LIKE → $regex
  • IN → $in
  • BETWEEN → $gte + $lte

Aggregation

  • GROUP BY → $group
  • HAVING → $match (after)
  • COUNT → $sum: 1
  • SUM/AVG → $sum/$avg
  • JOIN → $lookup

Clauses

  • WHERE → filter / $match
  • ORDER BY → sort() / $sort
  • LIMIT → limit() / $limit
  • OFFSET → skip() / $skip
  • AND/OR → $and/$or

Questions Fréquentes

Qu'est-ce que SQL to MongoDB ?

SQL to MongoDB est un outil en ligne gratuit qui convertit les requêtes SQL en syntaxe de requête MongoDB équivalente, aidant les développeurs à passer d'une base de données à une autre.

SQL to MongoDB est-il gratuit ?

Oui, il est entièrement gratuit et ne nécessite aucune inscription. Toute la conversion s'effectue côté client, dans votre navigateur.

Quelles opérations SQL prend-il en charge ?

SQL to MongoDB prend en charge les requêtes SELECT, INSERT, UPDATE et DELETE, et les convertit en leurs équivalents MongoDB, notamment find, insertOne, updateMany et deleteMany.

Mes données sont-elles en sécurité avec cet outil ?

Absolument. Le SQL to MongoDB Converter traite tout côté client, dans votre navigateur. Aucune donnée n'est envoyée ni stockée sur un serveur. Votre contenu reste privé sur votre appareil à tout moment.

Le SQL to MongoDB Converter fonctionne-t-il sur les appareils mobiles ?

Oui, le SQL to MongoDB Converter est entièrement responsive et fonctionne sur smartphones et tablettes. Vous pouvez l'utiliser sur n'importe quel appareil doté d'un navigateur web moderne, sans aucune application à télécharger.

Dois-je créer un compte pour utiliser cet outil ?

Aucun compte ni inscription n'est nécessaire. Ouvrez simplement le SQL to MongoDB Converter dans votre navigateur et commencez à l'utiliser immédiatement. Il n'y a ni page d'inscription ni restriction d'utilisation.

Quels langages de programmation ou formats prend-il en charge ?

Le SQL to MongoDB Converter prend en charge un large éventail de formats et de langages populaires. Consultez l'interface de l'outil pour la liste complète des options prises en charge.

Comment utiliser le SQL to MongoDB Converter ?

Saisissez simplement votre contenu dans le champ prévu, ajustez les paramètres selon vos préférences, et l'outil le traitera instantanément. Vous pouvez ensuite copier le résultat dans le presse-papiers ou le télécharger.

Quels navigateurs sont pris en charge ?

Le SQL to MongoDB Converter fonctionne dans tous les navigateurs modernes, dont Chrome, Firefox, Safari, Edge et Opera. Pour une expérience optimale, utilisez la dernière version de votre navigateur préféré.

Comment une clause WHERE en SQL est-elle traduite en MongoDB ?

Une clause SQL WHERE devient l'objet de filtre que MongoDB transmet à find(), ou une étape $match lorsque la requête nécessite un pipeline d'agrégation. Ce convertisseur analyse vos conditions une par une et traduit chaque opérateur : = devient une paire clé-valeur directe, tandis que >, <, >= et <= deviennent $gt, $lt, $gte et $lte, et != ou <> devient $ne. Les conditions multiples reliées par AND sont regroupées dans $and, et celles reliées par OR dans $or, ce qui préserve la logique booléenne. Les prédicats spéciaux sont également gérés : IN et NOT IN se traduisent par $in et $nin, BETWEEN x AND y devient une plage $gte/$lte, et IS NULL et IS NOT NULL deviennent null et $ne: null. Collez ci-dessus votre SELECT filtré par WHERE pour voir le document de filtre exact qu'il produit.

Comment un motif SQL LIKE est-il converti en MongoDB ?

MongoDB n'a pas d'opérateur LIKE, donc cet outil convertit LIKE en un $regex insensible à la casse avec l'option $options: "i". Le point clé est la gestion du caractère générique SQL % : un motif de préfixe comme 'John%' ancre l'expression régulière au début (^John), un motif de suffixe comme '%son' l'ancre à la fin (son$), et un motif de contenance comme '%admin%' supprime les deux ancres pour rechercher n'importe où dans la chaîne. Le caractère générique SQL à un seul caractère _ est traduit par le point de l'expression régulière. NOT LIKE est encapsulé dans $not autour de la même expression régulière pour inverser la correspondance. Comme la correspondance par expression régulière peut être plus lente que des recherches exactes sur de grandes collections, privilégiez les motifs de préfixe ancrés, plus favorables à l'indexation. Essayez l'exemple de requête « SELECT with LIKE » dans l'outil pour voir une conversion réelle.

Comment le convertisseur gère-t-il les JOIN SQL en MongoDB ?

MongoDB ne joint pas les tables comme le fait SQL, donc ce convertisseur réécrit un JOIN sous forme de pipeline d'agrégation construit autour de $lookup. Il lit votre table FROM, la table jointe et la condition d'égalité ON, puis génère une étape $lookup qui récupère les documents correspondants de la seconde collection, suivie d'une étape $unwind pour aplatir le tableau joint en documents individuels. Les jointures INNER et LEFT avec une seule égalité ON sont prises en charge. Les éventuelles conditions WHERE sont intégrées dans une étape $match, ORDER BY devient $sort, LIMIT devient $limit, et une liste de colonnes sélectionnées devient une étape $project, le tout placé dans le bon ordre du pipeline. Le résultat est étiqueté d'un badge Aggregation pour rendre évidente la structure à plusieurs étapes. Comme la modélisation orientée documents remplace souvent les jointures, évaluez si l'imbrication conviendrait mieux à votre schéma, puis chargez l'exemple JOIN pour expérimenter.

Comment GROUP BY et les fonctions d'agrégation SQL se traduisent-ils en MongoDB ?

Les requêtes GROUP BY sont converties en un appel aggregate() avec une étape $group. Les colonnes de regroupement deviennent le _id de l'étape (un seul champ pour une colonne, ou un objet composé pour plusieurs), et vos fonctions d'agrégation se traduisent directement en accumulateurs MongoDB : COUNT(*) devient $sum: 1, SUM devient $sum, AVG devient $avg, et MIN et MAX deviennent $min et $max. Les alias de colonnes écrits avec AS sont conservés comme noms de champs en sortie. Une clause WHERE est placée dans une étape $match avant $group, et une clause HAVING devient une seconde étape $match après $group, reproduisant l'ordre SQL du filtre appliqué après l'agrégation. ORDER BY et LIMIT sont ajoutés en tant qu'étapes $sort et $limit. Essayez l'exemple « GROUP BY with SUM » pour voir comment les alias et HAVING s'affichent dans le pipeline.

Quelle est la différence entre les formats de sortie Shell, Node.js et Python ?

Le panneau de résultat propose la même requête convertie en trois formats via un sélecteur d'onglets, afin que vous puissiez copier le code adapté à votre environnement. Shell fournit la syntaxe mongosh brute, comme db.users.find({ age: { $gt: 25 } }), idéale pour un collage direct dans le shell Mongo ou Compass. Node.js encapsule le résultat dans une ébauche exécutable utilisant le pilote officiel mongodb, avec une configuration MongoClient, une connexion à partir de votre variable d'environnement MONGODB_URI, et l'appel de la méthode de collection correspondante. Python produit une ébauche équivalente utilisant PyMongo, en convertissant les noms de méthodes en snake_case tels que insert_one et update_many. Ces ébauches sont des modèles de départ : complétez le nom de la base de données et le filtre final avant de les exécuter. Choisissez l'onglet dont vous avez besoin, puis cliquez sur Copier pour placer le code formaté dans votre presse-papiers.

À propos du convertisseur SQL vers MongoDB

Le convertisseur SQL vers MongoDB réécrit vos instructions SQL relationnelles en syntaxe de requête MongoDB équivalente, au fur et à mesure que vous tapez. Collez une instruction SELECT, INSERT, UPDATE, DELETE, CREATE TABLE ou ALTER TABLE, et l'outil produit l'appel MongoDB correspondant -- un filtre find(), un insertMany(), un updateMany() avec $set, un pipeline d'agrégation, et bien plus. Il est conçu pour les développeurs et les équipes data qui migrent de MySQL, PostgreSQL ou SQL Server vers MongoDB, et qui pensent déjà en SQL tout en voulant comprendre comment une requête familière se traduit dans une base de données orientée documents.

Tout s'exécute dans votre navigateur. L'analyse et la conversion se font localement sur votre appareil, si bien que le SQL que vous collez -- y compris des requêtes qui référencent de vrais noms de tables et de colonnes -- n'est jamais envoyé vers un serveur. Aucune inscription, aucune limite de requêtes, rien à installer.

Ce que l'outil convertit

Le convertisseur identifie le type d'instruction et l'oriente vers la bonne méthode MongoDB :

  • SELECT devient find() avec un filtre et une projection. La liste de colonnes se transforme en objet de projection, * renvoie les documents entiers.
  • SELECT DISTINCT devient distinct() sur le champ choisi.
  • INSERT devient insertOne() pour une seule ligne ou insertMany() pour plusieurs tuples VALUES.
  • UPDATE devient updateMany() encapsulé dans un opérateur $set.
  • DELETE devient deleteMany().
  • CREATE TABLE devient createCollection() avec un validateur $jsonSchema, qui associe les types SQL (INT, DECIMAL, BOOLEAN, DATE, JSON) aux types BSON et marque les colonnes NOT NULL comme obligatoires.
  • ALTER TABLE traduit ADD, DROP et RENAME COLUMN en mises à jour $set, $unset et $rename.

Comment les clauses et opérateurs sont traduits

La clause WHERE est analysée condition par condition, puis reliée par $and ou $or. Les opérateurs pris en charge incluent les comparaisons (=, >, <, >=, <=, !=/<>), ainsi que :

  • LIKE est converti en $regex insensible à la casse, avec % correctement ancré pour les motifs de préfixe ('John%'), de suffixe ('%son') et de contenance ; NOT LIKE utilise $not.
  • IN et NOT IN deviennent $in et $nin.
  • BETWEEN x AND y devient une plage $gte/$lte.
  • IS NULL et IS NOT NULL deviennent null et $ne: null.

ORDER BY se traduit en sort() (ordre croissant 1, DESC devient -1), LIMIT en limit(), et OFFSET/SKIP en skip().

Agrégations et JOINs

Là où SQL s'appuie sur le moteur pour regrouper et joindre les données, MongoDB utilise un pipeline d'agrégation, que le convertisseur construit pour vous :

  • GROUP BY génère un appel aggregate() avec une étape $group. Les fonctions d'agrégation se traduisent directement -- COUNT(*) devient $sum: 1, SUM devient $sum, AVG devient $avg, MIN/MAX deviennent $min/$max -- et les alias de colonnes sont conservés.
  • HAVING devient une étape $match placée après $group, reproduisant l'ordre SQL du filtre appliqué après l'agrégation.
  • JOIN (INNER ou LEFT avec une égalité ON) devient un $lookup suivi d'un $unwind, avec les éventuelles clauses WHERE, ORDER BY et LIMIT intégrées dans les étapes suivantes du pipeline.

Le panneau de résultat indique pour chaque conversion la méthode utilisée et signale les requêtes d'agrégation, de sorte que la différence structurelle entre un simple find() et un pipeline à plusieurs étapes saute aux yeux.

Formats de sortie, exemples et remarques de sécurité

Le résultat est disponible en trois formats via un sélecteur d'onglets : la syntaxe shell MongoDB, une ébauche Node.js utilisant le pilote officiel MongoDB, et une ébauche Python utilisant PyMongo. Une rangée de requêtes d'exemple en un clic couvre les motifs courants (WHERE, LIKE, BETWEEN, JOIN, GROUP BY, DISTINCT, INSERT, UPDATE, DELETE) pour des tests rapides, et un bouton de copie place le résultat dans votre presse-papiers.

L'outil affiche aussi des remarques contextuelles. Il avertit, par exemple, lorsqu'un UPDATE ou un DELETE ne comporte aucune clause WHERE -- une requête qui toucherait alors tous les documents de la collection -- et ajoute des rappels lorsqu'une construction SQL n'a pas d'équivalent exact en MongoDB. Considérez le résultat comme un point de départ précis et bien structuré : vérifiez-le par rapport à votre schéma et à vos données réelles avant de l'exécuter en production, car la correspondance colonne-champ et les conditions imbriquées complexes peuvent encore nécessiter un œil humain.