SQL у MongoDB запит
Перетворіть оператор SQL SELECT у виклик MongoDB find() або агрегаційний конвеєр.
SQL у MongoDB запит
Вставте оператор SQL SELECT і цей інструмент перетворить його в еквівалентний MongoDB запит — либо виклик методу mongosh, який можна запустити в оболонці, либо простий JSON документ запиту для вашого власного коду драйвера. Він читає пропозицію WHERE, ORDER BY, LIMIT і OFFSET і перетворює їх у MongoDB фільтр, сортування, limit і skip, тому "SELECT id, name FROM users WHERE age > 18 ORDER BY name DESC LIMIT 10" стає готовим до запуску find() з відповідним фільтром і об'єктом sort.
Він також розуміє агрегацію. COUNT, SUM, AVG, MIN і MAX у списку SELECT в поєднанні з GROUP BY створюють етап $group, за яким слідує етап $project, який перейменовує згруповані поля _id назад у вихідні стовпці. JOIN стає етапом $lookup плюс $unwind, коли увімкнена опція "Перетворити JOIN у $lookup" — відключіть її, і join буде видалено, з приміткою, що пояснює чому. Опція "Перетворити імена стовпців у camelCase" перетворює стовпці snake_case, такі як first_name, на firstName, відповідаючи типовому називанню Mongoose, а відступ ви можете встановити самі.
Не кожна конструкція SQL має чистий еквівалент MongoDB — підзапити, UNION, вирази CASE і HAVING не відображаються на один запит або конвеєр. Замість того щоб мовчки створювати неправильний запит, інструмент виводить зрозумілу помилку з назвою непідтримуваної конструкції, або для речей, які він може обійти (додатковий JOIN, скинутий HAVING, несгрупований стовпець SELECT), додає короткий коментар попередження вище згенерованого запиту, який пояснює що змінилось.
Усе працює локально у вашому браузері: SQL аналізується й конвертується повністю на вашому пристрої, і жоден запит чи схема ніколи не залишає його. Скопіюйте результат, завантажте його як .txt файл або відправте назад на вхід для продовження уточнення вихідного запиту.