基本的な操作をpymongo

PythonのMongoDBの

pyMongo

PythonのMongoDBのMongoDBのドライバに接続する必要が
インストールpymongoを:指定のインストールバージョンupdateコマンドpyMongo
pip3 install pymongo

python3 -m pip3 install pymongo==3.5.1

python3 -m pip3 install --upgrade pymongo

接続は、データベースを作成し、データベースが存在するかどうかを判断します

from pymongo import MongoClient

# 使用mongoclient创建一个连接:1.指定参数
# mongo_client=MongoClient(host='localhost',port=27017)
# 2.使用url方式连接
mongo_client=MongoClient("mongodb://localhost:27017/")
# 查看所有文档(数据库)
list_dbs=mongo_client.list_database_names()
# 选择文档
example=mongo_client['example']
# 如果集合存在则返回,反则创建:article
for i in example.list_collection_names():
    if i in 'article':
        print('{}文档存在'.format(i))

条件演算子のMongoDB
> $gt
< $lt
>= $gte
<= $lte
!= $ne
$in 在范围内
$nin 不在范围内
$regex 匹配正则
$exists 属性是否存在
$type 类型判断
$mod 数字取模操作
$text 文本查询
$where 高级条件查询

挿入データ
db.collection.insert_one(データ)db.collection.insert_many(データ)
mydict={'title':'新增标题','count':1}
insert_data=example_data.insert_one(mydict)

mydict={'title':'新增标题','count':1}
mydict2={'title':'新增2标题','count':2}
insert_data=example_data.insert_one([mydict,mydict2])

削除データ
db.collection.delete_one(クエリ)db.collection.delete_many(クエリ)
del_one_data=example_data.delete_one({'count':999})

del_many_data=example_data.delete_many({'count':{'$lt':800,'$gt':700}})

変更データ(不在作成)
db.colleciton.update_one({クエリ}、{$修飾子:{}の値を変更し}):{}修正値db.colleciton.update_many({クエリ}、{$修飾子})
update_one_data=example_data.update_one({'count':{'$lt':1000,'$gt':900}},{'$set':{'title':'IG合理的'}})

update_many_data=example_data.update_many({'count':{'$lt':1000,'$gt':900}},{'$set':{'title':'IG合理的'}})

クエリ(上限、および、または)

# 对查询结果进行范围截取
limit_data=example['data'].find().limit(5)
# 查询全部
data=example['data'].find()
# 按AND条件查询指定字段数据
# 查询count字段大于8989的数据
data=example['data'].find({'count':{'$gt':8989}})
# 查询count字段大于8989和title大于8989的数据(and)
and_data=example['data'].find({'title':'新覆盖标题','count':{'$gt':8989}})
# 查询count大于550且小于650或title是修改多个标题
or_data=example['data'].find({'$or':[{'title':'修改多个标题','count':{'$gte':550,'$lte':650}}]})

+ +データは、ジャンプの範囲をソート

  1. ソート(提出され、pymongo.ASCENDING / pymongo.DESCENDING)クエリ結果を昇順/降順の
    ソートdb.collection.findを()。()
  2. スキップ(NUM)クエリ結果のスキップ値
    db.collection.findが()。(スキップ)
  3. 限界(NUM)範囲クエリ結果が取ら
    (db.collection.find)。限界()
  4. 優先度:順序に関係なく、ソート>スキップ>制限、使用して

カウントが9900より大きく、下降カウントは9900よりも大きい場合のみ先頭データ10を下降のみ最初の5つを取るデータの降順に90には、スキップされたデータ、900よりカウント大きく、1000未満
sort_data=example_data.find({'count':{'$gt':9900}}).sort('count',-1)

sort_limit_data=example_data.find({'count':{'$gt':9900}}).sort('count',-1).limit(10)

sort_skip_limit_data=example_data.find({'count':{'$gt':900,'$lt':1000}}).sort('count',-1).skip(90).limit(5)

$ $変更や特殊文字の使用

(1)フィールドの変更の$設定値が
(2)未設定の削除フィールドを$
(3)$ INC増加参照
配列操作用(4):
   プッシュの最後の位置データアレイにおいて増加$
   最後に$ pushAll、アレイ位置データの複数の増加
   $単一のプルは、アレイ内の指定された要素を削除
   $ pullAll複数配列内の指定された要素を削除
   最初または最後の要素を削除$のPOPを整数配列削除負正シーケンスは削除する逆の
   電流を格納$を(アレイ)整合素子添字インデックス、インデックスが最も外側の位置を記憶することができます

おすすめ

転載: www.cnblogs.com/Ink-kai/p/12350723.html