Sommario
Ogni database in MongoDB è costituito da raccolte equivalenti a un RDBMS o database relazionale costituito da tabelle SQL. Ogni database archivia i dati raccolti sotto forma di documenti equivalenti alle tabelle che archiviano i dati in righe.Mentre memorizza i dati della riga nel set di colonne, un documento ha una struttura JSON (nota come BSON in MongoDB). Infine, il modo in cui abbiamo righe in una riga SQL, che ha campi in MongoDB.
Equivalenti tra query sql e query Mondodb
supponiamo che il database mysql precedente vedremo come mappare e convertire le query
Crea una tabella o una raccolta
In MongoDB, non è necessario creare esplicitamente la struttura della raccolta, come facciamo per le tabelle con una query CREATE TABLE. La struttura del documento viene creata automaticamente quando si verifica il primo inserimento nella raccolta. Tuttavia, puoi creare una raccolta vuota usando il comando 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 ("clienti")
Per aggiungere record di dati
MYSQL
INSERIRE IN VALORI `clienti` (`id`, `nome`,` città`) (NULL, 'Fernan', 'Barcelona');
MongoDB
db.clientes.insert ({nome: "Fernan", città: Barcellona "})
Mostra tutti i record
MySQL
SELEZIONA * DA `clienti`
MongoDB
db.clients.find()
Cerca un cliente per nome
MySQL
SELECT * FROM `clienti` WHERE` nome` = 'Fernan'
MongoDB
db.clientes.find ({nome: "Fernan"})
Ora aggiungeremo più criteri per recuperare il cliente per nome e città. I campi dei criteri specificati utilizzando le virgole rappresentano la condizione AND logica. Pertanto, questa dichiarazione cercherà i documenti che soddisfano entrambi i criteri.
MySQL
SELECT * `FROM` clienti` WHERE `nome` = 'Fernan' AND` città` = 'Barcellona'
MongoDB
db.clientes.find ({nome: "Fernan", città: "Barcellona"})
Mostra tutti i record nella tabella dei clienti ordinati in ordine crescente per nome
MySQL
SELEZIONA * DA `clienti` ***** per nome ASC
MongoDB
db.clientes.find().sort ({nome: 1})
Per limitare il numero di documenti da restituire, viene utilizzato il metodo limite per specificare il numero di documenti.
MySQL
SELEZIONA * DAL LIMITE `clienti` 10
MongoDB
db.clients.find().limit (10)
Per saltare un numero di record, viene utilizzata la funzione di salto in MongoDB. Ad esempio, la seguente istruzione limita 10 record e salta i primi cinque.
MySQL
SELEZIONA * DA `post` LIMIT 10 OFFSET 5
MongoDB
db.clients.find().limit (10) .skip (5)
Per il metodo di aggiornamento vengono specificati i criteri per la selezione dei documenti. Il primo parametro è quello di identificare il record, il secondo parametro specifica l'effettiva operazione di aggiornamento da eseguire. Ad esempio, la seguente query seleziona tutti i documenti denominati Carlos e imposta la loro città come Madrid.
Una differenza qui è che, per impostazione predefinita, la query di aggiornamento di MongoDB aggiorna solo un record e la prima corrispondenza nel documento. Per aggiornare tutti i documenti corrispondenti dobbiamo offrire un terzo parametro che specifica multiple come true indicando che vogliamo aggiornare più documenti.
MySQL
AGGIORNA clienti SET città = "Madrid" WHERE nome = 'Carlos'
MongoDB
Aggiorna tutte le corrispondenze
db.clientes.update ({nome: "Carlos"}, {$ set: {città: "Madrid"}}, {multi: true})
Aggiorna il primo record corrispondente
db.clientes.update ({nome: "Carlos"}, {$ set: {città: "Madrid"}})Ti è piaciuto e hai aiutato questo Tutorial?Puoi premiare l'autore premendo questo pulsante per dargli un punto positivo