Indholdsfortegnelse
Hver database i MongoDB består af samlinger, der svarer til en RDBMS eller relationsdatabase bestående af SQL -tabeller. Hver database gemmer de indsamlede data i form af dokumenter, hvilket svarer til tabeller, der gemmer data i rækker.Mens det gemmer rækkedataene i kolonnen, har et dokument en JSON -struktur (kendt som BSON i MongoDB). Endelig måden, vi har rækker på i en SQL -række, som har felter i MongoDB.
Ækvivalenter mellem sql -forespørgsler og Mondodb -forespørgsler
Antag, at den tidligere mysql -database vil se, hvordan vi kortlægger og konverterer forespørgslerne
Opret et bord eller en samling
I MongoDB er det ikke nødvendigt at eksplicit oprette samlingsstrukturen, som vi gør for tabeller med en CREATE TABLE -forespørgsel. Dokumentstrukturen oprettes automatisk, når den første indsættelse sker i samlingen. Du kan dog oprette en tom samling ved hjælp af kommandoen createCollection.
Mysql
OPRET TABEL `kunder` (` id` int (11) IKKE NULL AUTO_INCREMENT, `navn` varchar (255) IKKE NULL,` by` varchar (20) IKKE NULL, PRIMÆR NØGLE (`id`))
MongoDB
db.createCollection ("klienter")
For at tilføje dataposter
MYSQL
INDLÆG I `kunder` (` id`, `navn`,` by`) VÆRDIER (NULL, 'Fernan', 'Barcelona');
MongoDB
db.clientes.insert ({navn: "Fernan", by: Barcelona "})
Vis alle optegnelser
Mysql
VÆLG * FRA 'kunder'
MongoDB
db.clients.find ()
Søg efter en kunde ved navn
Mysql
VÆLG * FRA `kunder` WHERE` navn` = 'Fernan'
MongoDB
db.clientes.find ({navn: "Fernan"})
Nu skal vi tilføje flere kriterier for at hente kunden ved navn og by. Kriteriefelterne angivet ved hjælp af kommaer repræsenterer den logiske OG -tilstand. Derfor vil denne erklæring søge efter dokumenter, der opfylder begge kriterier.
Mysql
VÆLG * 'FRA' kunder 'WHERE' name` = 'Fernan' OG 'by' = 'Barcelona'
MongoDB
db.clientes.find ({navn: "Fernan", by: "Barcelona"})
Vis alle poster i kundetabellen sorteret i stigende rækkefølge efter navn
Mysql
VÆLG*FRA `kunder` ***** efter ASC -navn
MongoDB
db.clientes.find (). sort ({navn: 1})
For at begrænse antallet af dokumenter, der skal returneres, bruges grænsemetoden til angivelse af antallet af dokumenter.
Mysql
VÆLG * FRA 'kunders' GRÆNSE 10
MongoDB
db.clients.find (). grænse (10)
For at springe et antal poster over, bruges springfunktionen i MongoDB. For eksempel begrænser følgende sætning 10 poster og springer de første fem over.
Mysql
VÆLG * FRA 'indlæg' LIMIT 10 OFFSET 5
MongoDB
db.clients.find (). grænse (10) .skip (5)
For opdateringsmetoden er kriterierne for valg af dokumenter angivet. Den første parameter er at identificere posten, den anden parameter angiver den faktiske opdateringsoperation, der skal udføres. For eksempel vælger den følgende forespørgsel alle dokumenter med navnet Carlos og angiver deres by som Madrid.
En forskel her er, at MongoDB -opdateringsforespørgsel som standard kun opdaterer én post og den første match i dokumentet. For at opdatere alle de tilsvarende dokumenter skal vi tilbyde en tredje parameter, der angiver flere som sande, hvilket angiver, at vi ønsker at opdatere flere dokumenter.
Mysql
OPDATER klienter SET city = "Madrid" HVOR navn = 'Carlos'
MongoDB
Opdater alle matchede
db.clientes.update ({navn: "Carlos"}, {$ set: {city: "Madrid"}}, {multi: true})
Opdater den første matchende rekord
db.clientes.update ({navn: "Carlos"}, {$ set: {city: "Madrid"}})Kan du lide og hjælpe denne vejledning?Du kan belønne forfatteren ved at trykke på denne knap for at give ham et positivt punkt