Preskoči na sadržaj
100% lokalno

SQL u MongoDB upit

Pretvori SQL SELECT naredbu u MongoDB find() poziv ili pipeline agregacije.

Unos
Rezultat

SQL u MongoDB upit

Zalijepite SQL SELECT naredbu i ovaj alat je pretvara u ekvivalentni MongoDB upit — ili mongosh poziv koji možete pokrenuti u ljusci, ili čist JSON dokument upita za vašu vlastitu driver kodu. Čita WHERE klauzulu, ORDER BY, LIMIT i OFFSET te ih pretvara u MongoDB filter, sort, limit i skip, tako da "SELECT id, ime FROM korisnici WHERE godine > 18 ORDER BY ime DESC LIMIT 10" postaje spreman za pokretanje find() s podgovarajućim filter i sort objektima.

Također razumije agregacije. COUNT, SUM, AVG, MIN i MAX u listi SELECT kombinovani s GROUP BY proizvode $group fazu praćenu $project fazom koja preimenovava grupirane _id polja natrag u originalne nazive stupaca. JOIN postaje $lookup plus $unwind faza kad je "Pretvori JOIN u $lookup" uključeno — isključite ga i JOIN će biti izobličen, s bilješkom koja objašnjava zašto. "Pretvori imena stupaca u camelCase" preoblikuje snake_case stupce kao first_name u firstName, što odgovara tipičnom Mongoose nazivu, a provjera je do vas.

Ne svaka SQL konstrukcija ima čist MongoDB ekvivalent — podupiti, UNION, CASE izrazi i HAVING se ne mapiraju na jedan upit ili pipeline. Umjesto da šutljivo proizvedemo pogrešan upit, alat prijavljuje jasnu grešku koja naziva nepodržanu konstrukciju, ili, za stvari koje se mogu riješiti (dodatni JOIN, izobličeni HAVING, negrupirani SELECT stupac), dodaje kratku bilješku upozorenja iznad generiranog upita objašnjavajući što se promijenilo.

Sve se izvršava lokalno u vašem pregledniku: SQL se raščlanjuje i pretvara potpuno na vašoj uređaju, i nikada upit ili shema ne napuštaju ga. Kopirajte rezultat, preuzmite ga kao .txt datoteku, ili ga ponovno postavite u unos kako biste nastavili usavršavati izvorni upit.

FAQ

Podržava li JOIN?
Jedan JOIN se pretvara u $lookup plus $unwind fazu u pipeline agregacije kad je "Pretvori JOIN u $lookup" uključeno. RIGHT JOIN je konvertovan kao LEFT JOIN, a dodatni JOIN-ovi nakon prvoga su bilježeni kao ignorirani.
Što se događa s GROUP BY i funkcijama agregacije kao COUNT ili SUM?
Postaju $group faza (s ispravnim akumulatorom za svaku funkciju) praćena $project fazom koja vraća originalne nazive stupaca, sve unutar pipeline agregacije.
Koje SQL značajke nisu podržane?
Podupiti, UNION i CASE izrazi nemaju direktan MongoDB ekvivalent i proizvode jasnu grešku umjesto pogrešnog upita. HAVING je prihvaćen ali izobličen s upozorenjem, jer zahtijeva drugu $match fazu koju vi dodajete.
Mogu li dobiti čist JSON upit umjesto mongosh naredbe?
Da. Prebacite "Ispiši kao" u JSON upit kako biste dobili dokument upita (kolekcija, operacija, filter, itd.) koji možete raščlaniti ili ugraditi u vašu vlastitu kodu umjesto shell poziva.
Je li moj SQL negdje prosljeđen?
Ne. Pretvorba se u potpunosti izvršava u vašem pregledniku — vaš upit, nazivi tablica i podaci nikada ne napuštaju vašu uređaj.