[PYTHON] Arbeitsmemorandum (Pymongo) Teil 1. Grundlegende Bedienung

Über diesen Artikel

Ich habe Pymongo bei der Arbeit verwendet und diesen Artikel als Erinnerung erstellt. Ich werde es unten separat schreiben.

  1. Grundlegende Bedienung (diese Seite)
  2. Was ist MongoDB, Was ist Pymongo
  3. Verbindungsmethode
  4. [Methode einfügen](# Einfügen)
  5. Suchmethode
  6. Aktualisierungsmethode
  7. Methode löschen
  8. Relativ bequemer Betrieb (Bulk_write) 0. bulk_write
    Siehe auch: pymongo document Bulk_Write
  9. Ich habe es nicht viel benutzt, aber ich möchte es nicht noch einmal überprüfen, also notiere es dir (ich werde es bald schreiben) 0. aggregate
    Siehe auch: MongoDB-Dokumentaggregat-Pipeline

Betriebsumgebung

OS: Mac OS
MongoDB: 4.2
Python 3.6.8 :: Anaconda, Inc.
pymongo: 3.9.0

Was ist MongoDB?

Was ist Pymongo?

Wie Sie dem Namen entnehmen können, handelt es sich um eine MongoDB-Bibliothek, die auf Python ausgeführt wird.

Bedienung von Pymongo

Machen Sie im Grunde ein grobes Memo, indem Sie sich auf Folgendes beziehen. Referenz: pymongo document

Herstellen einer Verbindung zu MongoDB

main.py


import pymongo
from pymongo import MongoClient
#Verbindung mit Standardparametern(host=localhost,port = 27017)
#Wir können nicht garantieren, dass Sie tatsächlich eine Verbindung herstellen können
#Es scheint, dass beim Lesen und Schreiben von DBs wie find ein Fehler auftritt
client = MongoClient() #DB-Verbindung()
db = client.DB-Name#DB abrufen
collection = db.Sammlungsname#Sammlung(So etwas wie ein Tisch)Erhalten

Einfügen

main.py


#In Sammlung einfügen(Übergeben Sie einfach Daten im JSON-Format als Argument)

#Daten erstellen
json_list = [{"x":i,"y":i*2,"z":i*3} for i in range(0,5)]

#Dokument oder Dokumente einfügen(Scheint veraltet zu sein)
collection.insert(json_lsit) 
 
#Fügen Sie nur ein Dokument ein
collection.insert_one({"x":255,"y":255,"z":255})

#Daten erstellen
json_list = [{"x":i,"y":i*2,"z":i*3,"a":i*4} for i in range(0,5)]
#Fügen Sie mehrere Dokumente ein
collection.insert_many(json_list) 

Suchmethode

――Es ist ein grobes Bild, aber es scheint, dass die SQL-Auswahlklausel der Projektion und die where-Klausel dem Filter entspricht. Referenz: Suchen, Anzeigevorgang

main.py


#Suche alle(Wenn Sie im Filter nichts angeben, können Sie alle Elemente abrufen)
data = collection.find(filter={})
for i in data:
    pprint.pprint(i)

#Suche(Setzen Sie einfach unnötige Spalten in der Projektion auf 0
# 0,Es scheint, dass Sie die Anzeige mit True oder False ein- und ausschalten können, auch wenn es nicht 1 ist.
data = collection.find(filter={"x":{"$gt":1,  # $gt:1 ->Größer als 1
                                   "$lt":3}}, # $lt:3 ->Weniger als 3
                        projection={"_id":0}
                       )
for i in data:
    pprint.pprint(i)

Löschen

Die bedingte Abfrage scheint auf die gleiche Weise wie die Suche zu verwenden

main.py


#Übergeben Sie einfach den bedingten Ausdruck

#Löschen Sie ein Dokument, das den Bedingungen entspricht
collection.delete_one({"x":1}) 

#Löschen Sie Dokumente, die den Bedingungen entsprechen(Löschen Sie Dokumente mit x kleiner als 3)
collection.delete_many({"x":{"$lt":3}}) 

#Alle Elemente können ohne Angabe eines bedingten Ausdrucks gelöscht werden(Übergeben Sie einfach ein leeres Diktat)
# collection.delete_many({}) #Löschen Sie Dokumente, die den Bedingungen entsprechen

Aktualisieren

main.py


#Aktualisieren Sie ein Dokument, das den vom Filter angegebenen Bedingungen entspricht
collection.update_one(filter, 
                        update, 
                        upsert=False
                         )
#Aktualisieren Sie Dokumente, die den vom Filter angegebenen Bedingungen entsprechen, entsprechend der Aktualisierung
collection.update_many(filter, 
                        update, 
                        upsert=False
                         )

Es ist eine grobe Erklärung, aber die grundlegende Operation ist wie folgt. Wenn ich das nächste Mal Lust dazu habe, schreibe ich Bulk_Write, Aggregat usw. sorgfältiger.

Recommended Posts

Arbeitsmemorandum (Pymongo) Teil 1. Grundlegende Bedienung
Arbeitsmemorandum (Pymongo) Teil 2. Bequemer Betrieb (Bulk_write)
Python Basic Memorandum Teil 2
Python Basic Memorandum Teil 3 - Informationen zur Objektorientierung
Pandas Operations Memorandum
Djangos grundlegendes Memorandum
Grundlegende Bedienung von Pandas
Grundlegende Bedienung von Pandas
Python-Grundnotiz - Teil 2
Installieren von Python 3 auf einem Mac und Überprüfen der Grundfunktionen Teil 1
Python-Grundnotiz - Teil 1
Python Memorandum Super Basic
Python-Anwendung: Pandas Teil 1: Basic
Python-Grammatik-Grundnotiz (1)
Ich habe die Grundoperation von Pandas im Jupyter Lab geschrieben (Teil 1)
Ich habe die grundlegende Operation von Pandas im Jupyter Lab geschrieben (Teil 2).