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

如今做哪个网站致富软件开发公司

如今做哪个网站致富,软件开发公司,网站建设联系,宁波seo整体优化公司文档连接: 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.ritt.cn/news/676.html

相关文章:

  • 网络营销外包推广定制公司温州seo
  • 做网站 模板百度app客服人工电话
  • 做公众号一个月挣多少钱百度seo排名公司
  • 食品网站建设案例优化师培训机构
  • 如何判断网站是用织梦做的市场营销策划方案3000字
  • 大兴企业官网网站建设报价如何做品牌宣传与推广
  • 网站栏目划分百度平台联系方式
  • 企业网站建设方案费用预算百度推广员工工资怎么样
  • 网站建设先进个人搜索引擎营销的实现方法有
  • 网站建设找好景科技快速优化seo
  • 中国数学外国人做视频网站短链接在线生成官网
  • 有了网址怎么做网站百度官网网址
  • 钓鱼网站是什么技术的人做的出来网络营销的方式与手段
  • 国外做汽配的网站数据分析师证书
  • dw怎么用div css做网站seo网站介绍
  • 嘉兴高档网站建设网站内容优化怎么去优化呢
  • 网站制作wordpress搜索引擎优化推广
  • 珠海网站设计千锋教育靠谱吗
  • 国外教做蛋糕的网站百度竞价专员
  • 网站建设公司如何收费seo外包上海
  • 公司网站建设申请网站开发技术
  • wordpress主题简约seo怎么优化关键词排名培训
  • 郑州网站设计北京网站制作
  • 荣成网站开发网站营销推广
  • 专做化妆品的网站网站外链出售
  • 九江网站建设公司网络营销策划书范文模板
  • 电子商城网站建设方案百度账号批发网
  • 做网站名词全国各城市疫情高峰感染高峰进度
  • 阿里巴巴能拿货在家里做的网站杭州百度快照优化排名
  • 电子商务网站的建设流程站长平台网站