Während die Zeilendaten in den Spalten gespeichert werden, hat ein Dokument eine JSON-Struktur (in MongoDB als BSON bezeichnet). Schließlich haben wir Zeilen in einer Zeile von SQL, die Felder in MongoDB hat.
Entsprechungen zwischen SQL-Abfragen und Mondodb-Abfragen
Angenommen, in der obigen MySQL-Datenbank sehen wir, wie die Abfragen zugeordnet und konvertiert werden
Erstellen Sie eine Tabelle oder Sammlung
In MongoDB muss die Auflistungsstruktur nicht explizit erstellt werden, wie dies bei Tabellen mit einer CREATE TABLE-Abfrage der Fall ist. Die Struktur des Dokuments wird automatisch erstellt, wenn das erste Einfügen in die Sammlung erfolgt. Sie können jedoch mit dem Befehl createCollection eine leere Sammlung erstellen.
Mysql
CREATE TABLE `clients` (` id` int (11) NICHT NULL AUTO_INCREMENT, `name` varchar (255) NICHT NULL,` city` varchar (20) NICHT NULL, PRIMARY KEY (`id`))
MongoDB
db.createCollection (“clients”)
Datensätze hinzufügen
MYSQL
INSERT IN `clients` (` id`, `name`,` city`) VALUES (NULL, ‘Fernan’, ‘Barcelona’);
MongoDB
db.clientes.insert ({Name: “Fernan”, Stadt: Barcelona “})
Alle Datensätze anzeigen
Mysql
SELECT * FROM `clients`
MongoDB
db.clientes.find ()
Suchen Sie einen Kunden nach Namen
Mysql
SELECT * FROM `clients` WHERE` name` = ‘Fernan’
MongoDB
db.clientes.find ({name: “Fernan”})
Jetzt werden wir weitere Kriterien hinzufügen, um den Client nach Name und Ort wiederherzustellen. Die mit Kommas angegebenen Kriterienfelder repräsentieren die logische UND-Bedingung. Daher wird in dieser Anweisung nach Dokumenten gesucht, die beide Kriterien aufweisen.
Mysql
SELECT * `FROM` clients` WHERE` name` = ‘Fernan’ AND` city` = ‘Barcelona’
MongoDB
db.clientes.find ({Name: “Fernan”, Stadt: “Barcelona”})
Zeigen Sie alle Datensätze in der Kundentabelle in aufsteigender Reihenfolge nach Namen sortiert an
Mysql
SELECT * FROM `clients` ***** by name ASC
MongoDB
db.clients.find (). sort ({name: 1})
Um die Anzahl der zurückgegebenen Dokumente zu begrenzen, wird die Begrenzungsmethode der Angabe der Anzahl der Dokumente verwendet.
Mysql
SELECT * FROM `clients` LIMIT 10
MongoDB
db.clientes.find (). limit (10)
Um eine Anzahl von Registern zu überspringen, wird die Sprungfunktion in MongoDB verwendet. Die folgende Anweisung begrenzt beispielsweise 10 Datensätze und überspringt die ersten fünf.
Mysql
SELECT * FROM `posts` LIMIT 10 OFFSET 5
MongoDB
db.clientes.find (). limit (10) .skip (5)
Für die Aktualisierungsmethode werden die Kriterien für die Auswahl der Dokumente angegeben. Der erste Parameter gibt den Datensatz an, der zweite Parameter gibt den tatsächlich auszuführenden Aktualisierungsvorgang an. Mit der folgenden Abfrage werden beispielsweise alle Dokumente mit dem Namen Carlos ausgewählt und Ihre Stadt als Madrid festgelegt.
Ein Unterschied besteht darin, dass die MongoDB-Aktualisierungsabfrage standardmäßig nur einen Datensatz und die erste Übereinstimmung des Dokuments aktualisiert. Um alle entsprechenden Dokumente zu aktualisieren, müssen wir einen dritten Parameter anbieten, der ein Vielfaches als wahr angibt und angibt, dass wir mehrere Dokumente aktualisieren möchten.
Mysql
UPDATE-Clients SET city = “Madrid” WHERE name = ‘Carlos’
MongoDB
Aktualisieren Sie alle Übereinstimmungen
db.clientes.update ({name: “Carlos”}, {$ set: {city: “Madrid”}}, {multi: true})
Aktualisieren Sie den ersten übereinstimmenden Datensatz
db.clientes.update ({name: “Carlos”}, {$ set: {city: “Madrid”})