Innholdsfortegnelse
Hver database i MongoDB består av samlinger som tilsvarer en RDBMS- eller relasjonsdatabase som består av SQL -tabeller. Hver database lagrer de innsamlede dataene i form av dokumenter som tilsvarer tabeller som lagrer data i rader.Mens det lagrer raddataene i kolonnen, har et dokument en JSON -struktur (kjent som BSON i MongoDB). Til slutt måten vi har rader i en SQL -rad, som har felt i MongoDB.
Ekvivalenter mellom sql -forespørsler og Mondodb -forespørsler
Anta at den forrige mysql -databasen vil se hvordan vi kan kartlegge og konvertere søkene
Lag et bord eller en samling
I MongoDB er det ikke nødvendig å eksplisitt lage samlingsstrukturen, slik vi gjør for tabeller med en CREATE TABLE -spørring. Dokumentstrukturen opprettes automatisk når den første innsatsen skjer i samlingen. Du kan imidlertid opprette en tom samling ved å bruke kommandoen createCollection.
Mysql
OPPRETT TABELL `kunder` (` id` int (11) NOT NULL AUTO_INCREMENT, `name` varchar (255) NOT NULL,` city` varchar (20) NOT NULL, PRIMARY KEY (`id '))
MongoDB
db.createCollection ("klienter")
For å legge til dataposter
MYSQL
SETT INN I `kunder` (` id`, `navn`,` by`) VERDIER (NULL, 'Fernan', 'Barcelona');
MongoDB
db.clientes.insert ({navn: "Fernan", by: Barcelona "})
Vis alle poster
Mysql
VELG * FRA `kunder`
MongoDB
db.clients.find ()
Søk etter en kunde ved navn
Mysql
VELG * FRA `kunder` WHERE` name` = 'Fernan'
MongoDB
db.clientes.find ({navn: "Fernan"})
Nå skal vi legge til flere kriterier for å hente kunden etter navn og by. Kriteriefeltene som er angitt ved hjelp av kommaer representerer den logiske OG -tilstanden. Derfor vil denne uttalelsen søke etter dokumenter som oppfyller begge kriteriene.
Mysql
VELG * `FRA` kunder` WHERE` name` = 'Fernan' AND` city` = 'Barcelona'
MongoDB
db.clientes.find ({navn: "Fernan", by: "Barcelona"})
Vis alle poster i kundetabellen sortert i stigende rekkefølge etter navn
Mysql
VELG*FRA `kunder` ***** etter ASC -navn
MongoDB
db.clientes.find (). sort ({navn: 1})
For å begrense antall dokumenter som skal returneres, brukes grensemetoden for å spesifisere antall dokumenter.
Mysql
VELG * FRA `KUNNERS` GRENSE 10
MongoDB
db.clients.find (). grense (10)
For å hoppe over et antall poster, brukes hoppfunksjonen i MongoDB. For eksempel begrenser følgende setning 10 poster og hopper over de fem første.
Mysql
VELG * FRA `innlegg` LIMIT 10 OFFSET 5
MongoDB
db.clients.find (). grense (10) .skip (5)
For oppdateringsmetoden er kriteriene for valg av dokumenter spesifisert. Den første parameteren er å identifisere posten, den andre parameteren angir den faktiske oppdateringsoperasjonen som skal utføres. For eksempel velger den følgende spørringen alle dokumenter som heter Carlos og angir byen som Madrid.
En forskjell her er at MongoDB -oppdateringsspørringen som standard oppdaterer bare én post og den første kampen i dokumentet. For å oppdatere alle de tilsvarende dokumentene må vi tilby en tredje parameter som angir flere som sanne som indikerer at vi vil oppdatere flere dokumenter.
Mysql
OPPDATER klienter SET city = "Madrid" HVOR navn = 'Carlos'
MongoDB
Oppdater alle samsvarende
db.clientes.update ({navn: "Carlos"}, {$ set: {city: "Madrid"}}, {multi: true})
Oppdater den første matchende posten
db.clientes.update ({navn: "Carlos"}, {$ set: {city: "Madrid"}})Likte og hjalp du denne opplæringen?Du kan belønne forfatteren ved å trykke på denne knappen for å gi ham et positivt poeng