当前位置: 首页 > news >正文

免费建立com网站织梦网站上传及安装

免费建立com网站,织梦网站上传及安装,武义建设局官方网站,工商登记查询系统官网文档连接: link 创建表 不需要创建表的语句&#xff0c;当插入表的第一条语句时&#xff0c;会隐式的创建表。 增 插入一条 db.people.insertOne({ user_id: "bcd001", age: 45, status: "A" } )插入多条 db.collection.insertMany([ <document 1&g…

文档连接: link

创建表

不需要创建表的语句,当插入表的第一条语句时,会隐式的创建表。

插入一条

db.people.insertOne({ user_id: "bcd001", age: 45, status: "A" }
)

插入多条

db.collection.insertMany([ <document 1> , <document 2>, ... ],{writeConcern: <document>,ordered: <boolean>}
)

writeConcern

如果mongodb有多个节点,这个writeConcern是说到底写几个节点再返回。写一个节点性能快,写多个节点性能慢。

test> db.people.insertOne(
...    { user_id: "bcd001", age: 45, status: "A" },
...    {
...    "writeConcern":{w:"majority",j:true,wtimeout:5000}
...     }
... )
{acknowledged: true,insertedId: ObjectId("649be01774d3e265a2c00f74")
}
参数说明
w:"majority”写的时候写大多数节点就返回
j:true表示刷到磁盘之后在返回(日志为false,计算结果为true)
wtimeout:5000快速失败(熔断)
ordered:true多条情况下是否按顺序插入

js脚本批量新增

客户端就是一个js的控制台。

# 通过使用客户端的load()命令批量新增
# /mongodb/js/books.js是下面脚本的路径
test> load("/mongodb/js/books.js");
true
test> db.books.countDocuments();
500000
var tags = ["nosql","mongodb","document","developer","popular"];
var types = ["technology","sociality","travel","novel","literature"];
var books=[];
for(var i=0;i<500000;i++){
var typeIdx = Math.floor(Math.random()*types.length);
var tagIdx = Math.floor(Math.random()*tags.length);
var favCount = Math.floor(Math.random()*100);
var book = {
title: "book-"+i,
type: types[typeIdx],
tag: tags[tagIdx],
favCount: favCount,
author: "xxx"+i
};
books.push(book)
}
db.books.insertMany(books);

help

db.help()
db.books.help()

db.books.find()
db.books.find({tag:"nosql"})

条件查询

SQLMQL
a = 1{a: 1}
a <> 1{a: {$ne: 1}}
a > 1{a: {$gt: 1}}
a >= 1{a: {$gte: 1}}
a < 1{a: {$lt: 1}}
a <= 1{a: {$lte: 1}}

查询逻辑

SQLMQL
a = 1 AND b = 1{a: 1, b: 1}或{$and: [{a: 1}, {b: 1}]}
a = 1 OR b = 1{$or: [{a: 1}, {b: 1}]}
a IS NULL{a: {$exists: false}}
a IN (1, 2, 3){a: {$in: [1, 2, 3]}}

正则表达式

## 使用正则表达式查找type包含 so 字符串的book
db.books.find({type:{$regex:"so"}})
## 或者
db.books.find({type:/so/})

排序

# #指定按收藏数(favCount)降序返回
db.books.find({type:"travel"}).sort({favCount:-1})

分页

db.books.find().skip(16).limit(8)

数据量非常大的情况下,避免使用分页,因为还是会扫描前多少条。

test> db.books.find({_id:{$gt: ObjectId("649be1ac74d3e265a2c00ff8")}}).limit(1)
[{_id: ObjectId("649be1ac74d3e265a2c00ff9"),title: 'book-132',type: 'literature',tag: 'popular',favCount: 97,author: 'xxx132'}
]

聚合函数

count

避免这种查询,这种也会扫描全部

# 为了计算总页数而进行的 count() 往往是拖慢页面整体加载速度的原因
db.coll.count({x: 100});

db.collection.updateOne()
db.collection.updateMany()
db.collection.updateOne(
<filter>,
<update>,{upsert: <boolean>,writeConcern: <document>,collation: <document>,arrayFilters: [ <filterdocument1>, ... ],hint: <document|string> // Available starting in MongoDB 4.2.1}
)

参数说明

参数
filter一个筛选器对象,用于指定要更新的文档。只有与筛选器对象匹配的第一个文档才会被更新。
update一个更新操作对象,用于指定如何更新文档。可以使用一些操作符,例如 s e t 、 set、 setinc、$unset等,
以更新文档中的特定字段
upsert一个布尔值,用于指定如果找不到与筛选器匹配的文档时是否应插入一个新文档。如果upsert为true,
则会插入一个新文档。默认值为false。
writeConcern一个文档,用于指定写入操作的安全级别。可以指定写入操作需要到达的节点数或等待写入操作的时间。
collation一个文档,用于指定用于查询的排序规则。例如,可以通过指定locale属性来指定语言环境,从而实现基于区域设置的排序
arrayFilters一个数组,用于指定要更新的数组元素。数组元素是通过使用更新操作符 [ ] 和 []和 []来指定的。
hint一个文档或字符串,用于指定查询使用的索引。该参数仅在MongoDB 4.2.1及以上版本中可用。

update的操作符

操作符格式描述
$set{$set:{field:value}}指定一个键并更新值,若键不存
在则创建
$unset{$unset : {field : 1 }}删除一个键
$inc{$inc : {field : value } }对数值类型进行增减
$rename{$rename : {old_field_name :new_field_name } }修改字段名称
$push{ $push : {field : value } }将数值追加到数组中,若数组不存在则会进行初始化
$pushAll{$pushAll : {field : value_array}}追加多个值到一个数组字段内
$pull{$pull : {field : _value } }从数组中删除指定的元素
$addToSet{$addToSet : {field : value } }添加元素到数组中,具有排重功能
$pop{$pop : {field : 1 }}删除数组的第一个或最后一个元素
 test> db.books.find({_id:{$gt: ObjectId("649be1ac74d3e265a2c00ff8")}}).limit(1)
[{_id: ObjectId("649be1ac74d3e265a2c00ff9"),title: 'book-132',type: 'literature',tag: 'popular',favCount: 98,author: 'xxx132'}
]
test> db.books.updateOne(
... {title:"my book"},
... {$set:{tags:["nosql","mongodb"],type:"none",author:"fox"}},
... {upsert:true}
... )
{acknowledged: true,insertedId: ObjectId("649bf00ce9b03ae08c3a971e"),matchedCount: 0,modifiedCount: 0,upsertedCount: 1
}

更新多个

# 插入的时间统一以零时区为准,存在多个地区多个节点的情况下,如果以各自时区为准,会乱套。
db.books.updateMany({type:"novel"},{$set:{publishedDate:new Date()}})

findAndModify

先查,再返回。类似并发的getAndIncreament();返回旧值

 # 将某个book文档的收藏数(favCount)加1
db.books.findAndModify({query:{_id:ObjectId("642ec31813bdda928a1ea2a8")},update:{$inc:{favCount:1}}
})

默认情况下,findAndModify会返回修改前的“旧”数据。如果希望返回修改后的数据,则可以指定
new选项

db.books.findAndModify({query:{_id:ObjectId("642ec31813bdda928a1ea2a8")},update:{$inc:{favCount:1}},new:true
})

# 删除一个
db.books.deleteOne ({ type:"novel" })
# 删除集合下全部文档 ,不如直接drop性能快
db.books.deleteMany ({})
# 删除 type等于 novel 的全部文档
db.books.deleteMany ({ type:"novel" }) 

findOneAndDelete

可以实现队列,某些场景下可以实现一个队列。

db.books.findOneAndDelete({type:"novel"})

批量操作

db.pizzas.insertMany( [
{ _id: 0, type: "pepperoni", size: "small", price: 4 },
{ _id: 1, type: "cheese", size: "medium", price: 7 },
{ _id: 2, type: "vegan", size: "large", price: 8 }
] )db.pizzas.bulkWrite( [
{ insertOne: { document: { _id: 3, type: "beef", size: "medium", price: 6 } } },
{ insertOne: { document: { _id: 4, type: "sausage", size: "large", price: 10 } }
},
{ updateOne: {
filter: { type: "cheese" },
update: { $set: { price: 8 } }
} },
{ deleteOne: { filter: { type: "pepperoni"} } },
{ replaceOne: {
filter: { type: "vegan" },
replacement: { type: "tofu", size: "small", price: 4 }
} }
] )
http://www.yayakq.cn/news/467902/

相关文章:

  • 网站建设需要掌握什么技术网站建设人群定位
  • 深圳企业网站建设方案青岛免费建网站
  • 网站优化的分析如何将aaa云主机做网站
  • 90设计网站免费素材关键词排名优化易下拉系统
  • 建设银行网银盾连接不上网站能注册账号的网站模板
  • 华亚快印网站开发网络推广和运营的区别
  • 使用cms建设网站安全吗如何在网上挣钱
  • 山东省住房与城乡建设网站重庆北碚网站建设
  • 合肥网站建设方案咨询高邑做网站
  • 学做预算网站网站导入
  • 怎么做网站可手机看网络工程就业岗位有哪些
  • 番禺网站建设培训班apt安装wordpress
  • 深圳网站制作可选兴田德润wordpress自定后台
  • 上海市建设工程备案查询网站wordpress环境
  • 网站建设怎么放到云空间动态背景网站
  • 低价网站建设公司上海网站开发哪里好薇
  • 东莞市建设安监局网站首页企业建站电话多少
  • 自建网站好建吗开创云网站建设支持
  • 商务网站设计报告网站建设安全方案
  • 房产网站代理摄影招聘网站
  • 临淄网站建设价格短期职业技能培训班
  • 做餐饮加盟的网站建设聊城有限公司网站建设 中企动力济二分
  • 营销型企业网站建设的基本原则是珠海住建网站
  • 网站制作国内知名企业企业营销型网站seo推广
  • 网站开发外包公司有哪些部门普通的旧房装修价格
  • wordpress建站阿里云制作招聘海报的app
  • 人才招聘网站开发扬中网站推广哪家好
  • 松江手机网站建设彩票网站我想自己做
  • 孟村县做网站价格服装网站首页设计
  • 长春火车站最新通知网站上做的图片不清晰是怎么回事