Pretvorite relacijske i SQL baze podataka u MongoDB

Sadržaj
Svaka baza podataka u MongoDB -u sastoji se od zbirki koje su ekvivalentne RDBMS -u ili relacijskoj bazi podataka koja se sastoji od SQL tablica. Svaka baza podataka pohranjuje prikupljene podatke u obliku dokumenata što je ekvivalentno tablicama koje podatke pohranjuju u retke.
Iako pohranjuje podatke o retku u skup stupaca, dokument ima JSON strukturu (u MongoDB -u poznata kao BSON). Na kraju, način na koji imamo redove u SQL retku koji ima polja u MongoDB -u.

Ekvivalent između sql upita i Mondodb upita
pretpostavimo da će prethodna baza podataka mysql vidjeti kako mapirati i pretvoriti upite
Napravite tablicu ili zbirku
U MongoDB -u nema potrebe za izričitim stvaranjem strukture zbirke, kao što to činimo za tablice s upitom CREATE TABLE. Struktura dokumenta automatski se stvara kada se prvi unos pojavi u zbirci. Međutim, praznu zbirku možete stvoriti pomoću naredbe createCollection.
Mysql
CREATE TABLE `customers` (` id` int (11) NOT NULL AUTO_INCREMENT, `name` varchar (255) NOT NULL,` city` varchar (20) NOT NULL, PRIMARY KEY (`id`))
MongoDB
db.createCollection ("klijenti")
Za dodavanje zapisa podataka
MYSQL
UMETAJTE `kupce` (` id`, `ime`,` grad`) VRIJEDNOSTI (NULL, 'Fernan', 'Barcelona');
MongoDB
db.clientes.insert ({naziv: "Fernan", grad: Barcelona "})
Prikaži sve zapise
Mysql
ODABERITE * OD `kupaca`
MongoDB
db.clients.find ()
Potražite kupca po imenu
Mysql
SELECT * FROM `customers` WHERE` name` = 'Fernan'
MongoDB
db.clientes.find ({name: "Fernan"})
Sada ćemo dodati još kriterija za dohvaćanje korisnika prema imenu i gradu. Polja kriterija navedena pomoću zareza predstavljaju logičko I stanje. Stoga će ova izjava tražiti dokumente koji zadovoljavaju oba kriterija.
Mysql
SELECT * `FROM` customers` WHERE` name` = 'Fernan' AND` city` = 'Barcelona'
MongoDB
db.clientes.find ({naziv: "Fernan", grad: "Barcelona"})
Prikažite sve zapise u tablici kupaca razvrstane uzlazno po imenu
Mysql
SELECT*FROM `customers` ***** prema nazivu ASC
MongoDB
db.clientes.find (). sort ({name: 1})
Da bi se ograničio broj dokumenata za vraćanje, koristi se metoda ograničenja specificiranja broja dokumenata.
Mysql
ODABERITE * OD OGRANIČENJA `kupaca` 10
MongoDB
db.clients.find (). limit (10)
Za preskakanje brojnih zapisa koristi se funkcija preskakanja u MongoDB -u. Na primjer, sljedeća izjava ograničava 10 zapisa i preskače prvih pet.
Mysql
SELECT * FROM `posts` LIMIT 10 OFFSET 5
MongoDB
db.clients.find (). limit (10) .skip (5)
Za metodu ažuriranja navedeni su kriteriji za odabir dokumenata. Prvi parametar je identificiranje zapisa, drugi parametar navodi stvarnu operaciju ažuriranja koju treba izvesti. Na primjer, sljedeći upit odabire sve dokumente s imenom Carlos i postavlja njihov grad kao Madrid.
Jedna je razlika ovdje u tome što prema zadanim postavkama upit za ažuriranje MongoDB ažurira samo jedan zapis i prvo podudaranje u dokumentu. Za ažuriranje svih odgovarajućih dokumenata moramo ponuditi treći parametar koji navodi višestruke vrijednosti kao istinite, što znači da želimo ažurirati više dokumenata.
Mysql
AŽURIRAJ klijente SET city = "Madrid" WHERE name = 'Carlos'
MongoDB
Ažuriraj sve podudarne
db.clientes.update ({name: "Carlos"}, {$ set: {city: "Madrid"}}, {multi: true})
Ažurirajte prvi odgovarajući zapis
db.clientes.update ({name: "Carlos"}, {$ set: {city: "Madrid"}})Je li vam se svidio i pomogao ovaj vodič?Autor možete nagraditi pritiskom na ovaj gumb kako biste mu dali pozitivan bod
wave wave wave wave wave