documentation d'apprentissage mongodb:
https://docs.mongoing.com/
1.
Fonctionnement de la base de données 1. Utilisez la base de données si elle existe et créez-la si elle n'existe pas
use test1;
Voir toutes les bases de données
show dbs;
Changer de base de données actuelle
use test1;
Afficher la base de données actuelle
db
Afficher toutes les collections de la base de données actuelle
show tables;
Afficher toutes les données de la collection (lors de l'interrogation des conditions, si vous utilisez un champ qui n'est pas dans la collection, aucune erreur ne sera signalée, mais aucun résultat)
db.students.find({})//花括号可加可不加
Supprimer la base de données
在当前数据库下运行db.dropDatabase()(有表也可以删除,而hive有表的话就不能删除数据库)
Supprimer la collection (nosql et la ruche peuvent être supprimées directement, qu'il y ait ou non des données dans le tableau)
db.users.drop();
Supprimer tous les documents de la collection
db.inventory.deleteMany({}) 必须带着花括号
update修改已有的文档可以同时新增字段
insert添加新的文档同时可以新增字段
Deux, opération d'insertion
insert({})插入空的时候必须带花括号
format
db.collection.insertMany(
[ <document 1> , <document 2>, ... ],
{
writeConcern: <document>,
ordered: <boolean>
}
)
1 ... La collection n'a pas besoin d'être prédéfinie, les données insérées sont automatiquement créées et la création de champ n'est pas limitée. En même temps, vous pouvez ajouter de nouveaux champs à volonté ou pas insérer la valeur d'un champ
db.students.insert({
name:'zb1',
age:1001,
hello:1
}
)
2 ... L'action d'insertion utilise la fonction insert () db.collection_name.insert ()
3. Insert time, support js, new Date ()
db.students.insert({
name:'zb11',
age:10011,
hello:11,
sex:"male",
addtime:new Date()//系统时间(格林威治时间,晚8小时),服务器时间不可修改,前端时间可以修改
}
)
db.students.find()
4. Pour insérer plusieurs enregistrements, faites attention à [] dans le document tableau, même si vous en insérez un, utilisez insertmany () pour utiliser []
db.students.insertMany([{
name:'zb11',
age:10011,
hello:13,
sex:"male",
addtime:new Date()//系统时间(格林威治时间),服务器时间不可修改,前端时间可以修改
},
{
name:'zb11',
age:10011,
hello:14,
sex:"male",
addtime:new Date()//系统时间(格林威治时间),服务器时间不可修改,前端时间可以修改
}]
)
5.insert = insertmany, insérez un seul
Troisièmement,
modificateur de mise à jour 3.1: suivi de (clé: valeur)
{$set:{
status:'pending'}}
1.$set如果存在这个字段则更新,不存在则创建
2.$currentDate()更新创建时间,不存在则自动创建 修改器:
3.$inc 更新数字字段并加n ,n必须是整数 ,1是加1,-1是减1
3.2 Queryer: le recto est la clé et la condition racine est vlaue à l'arrière
{age:{$gte:10}}
等于: :/$eq
大于:$gt
大于等于:$gte
小于:$lt
小于等于:$lte
不等于:$ne
format:
db.collection.updateMany(
<filter>,相当于sql的where
<update>,相当于sql的set
{
upsert: <boolean>,//默认false,ture表示没有这个条文档的话自动创建
writeConcern: <document>,
collation: <document>,
arrayFilters: [ <filterdocument1>, ... ],
hint: <document|string> // Available starting in MongoDB 4.2.1
}
)
updateMany (),
1. Modificateur: définir, ajouter une implémentation de champ et attribuer une valeur, définir, ajouter une implémentation de champ et attribuer une valeur,s e t ,De plus Yi Ge mot segments du réel courant et affecté la valeur , SET si l'existence de ce champ est misjour, il n'existe pas encore créer
db.students.updateMany({},{$set:{sex:'male'}})
2. Modificateur: $ currentDate met à jour l'heure de création, si elle n'existe pas, elle sera créée automatiquement
db.students.updateMany({
status:'stop'},{$currentDate:{createtime:true}})
3. mettre à jour, updateOne ne met à jour qu'un
db.students.updateOne({age:11},{$set:{age:10,status:'ok'}})
4.updateMany () 更新 多 条 == mettre à jour les élèves set status = "stop" où status = "ok"
db.students.updateMany({
status:'ok'},{$set:{
status:'stop'}})
5.replaceOne (), remplace le document précédemment mis en correspondance par le deuxième document
db.students.replaceOne({
status:'ok'},{
status:'stop',name:"xiao qi" ,age:10,num:1})
6. Si ce document ne peut pas être mis en correspondance avant {upsert: true}, un nouveau document sera créé automatiquement
db.students.replaceOne({
status:'o'},{
status:'stop',name:"xiao qi" ,age:10,num:1},{upsert:true})
7. Le statut de tous les élèves âgés de 20 ans ou plus devient en attente
db.students.updateMany(
{age:{$gte:10}},{$set:{
status:'pending'}}
)
8. Remplacez l'âge des élèves de plus de 10 ans par +1 et enregistrez l'heure de modification. Utilisez le modificateur $ inc pour mettre à jour le champ numérique et ajouter n
db.students.updateMany(
{age:11},{$inc:{age:1},$currentDate:{createtime:true}}
)
9. Ajouter un passe-temps sur le terrain pour Xiao Ming (aihao)
db.students.updateMany(
{
stuname:"小明"
},
{
$set:{aihao:"足球,篮球,乒乓球"}
}
)