mongoDB sql操作-学习笔记(更新学习中...)

所使用的数据库软件为
NoSQLBootster for MongoDB
SQL数据来源== >>> https://www.w3cschool.cn/mongodb/<<<

// db.user.find()
//显示所有的数据库   
show dbs

基本操作

// ---------------------基本操作--------------------------------

db.youj.insert({"name":"dshauandka"})

db.youj.insert({"address":"北京","phone":"123456213"})

db.youj.find()

db

use youj

删除数据库

// 删除数据库
db.dropDatabase()
// ---------------------删除--------------------------------
// 插入一条数据
db.col.insert({title: 'MongoDB 教程', 
    description: 'MongoDB 是一个 Nosql 数据库',
    by: 'w3cschool',
    url: 'http://www.w3cschool.cn',
    tags: ['mongodb', 'database', 'NoSQL'],
    likes: 100
})

db.col.insert({title: 'MongoDB 文档', 
    description: 'MongoDB 是一个 Nosql 数据库',
    by: 'w3cschool',
    url: 'http://www.w3cschool.cn',
    tags: ['mongodb', 'database', 'NoSQL'],
    likes: 40
})

// 查看数据
db.col.find()

// 删除 title 为 MongoDB 教程 所有的数据
db.col.remove({'title':'MongoDB 教程'})

// 删除 title 为 MongoDB 教程 一条数据
db.col.remove({'title':'MongoDB 教程'},1)

修改

// ---------------------修改--------------------------------

// db.collection.update( criteria, objNew, upsert, multi )
// update()函数接受以下四个参数:

// criteria : update的查询条件,类似sql update查询内where后面的。

// objNew : update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的

// upsert : 这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。

// multi : mongodb默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。

document=({"user_id" : "MNOPBWN","password" :"MNOPBWN" ,"date_of_join" : "16/10/2010" 
,"education" :"M.C.A." , "profession" : "CONSULTANT","interest" : "MUSIC","community_name" :["MODERN MUSIC", 
"CLASSICAL MUSIC","WESTERN MUSIC"],"community_moder_id" : ["MR. BBB","MR. JJJ","MR MMM"],"community_members" : 
[500,200,1500],"friends_id" : ["MMM123","NNN123","OOO123"],"ban_friends_id" :["BAN123","BAN456","BAN789"]});

db.userdetails.insert(document)

// 切记:不要有空格
db.userdetails.insert({"user_id" : "QRSTBWN","password" :"QRSTBWN" ,"date_of_join" : "17/10/2010" ,"education" :"M.B.A." , "profession" : "MARKETING","interest" : "MUSIC","community_name" :["MODERN MUSIC", "CLASSICAL MUSIC","WESTERN MUSIC"],"community_moder_id" : ["MR. BBB","MR. JJJ","MR MMM"],"community_members" : [500,200,1500],"friends_id" :["MMM123","NNN123","OOO123"],"ban_friends_id" :["BAN123","BAN456","BAN789"]});

db.userdetails.find()


db.userdetails.update({"user_id" : "QRSTBWN"},{"user_id" : "QRSTBWN","password" :"NEWPASSWORD" ,"date_of_join" : "17/10/2010" ,"education" :"M.B.A." , "profession" : "MARKETING","interest" : "MUSIC","community_name" :["MODERN MUSIC", "CLASSICAL MUSIC","WESTERN MUSIC"],"community_moder_id" : ["MR. BBB","MR. JJJ","MR MMM"],"community_members" : [500,200,1500],"friends_id" : ["MMM123","NNN123","OOO123"],"ban_friends_id" :["BAN123","BAN456","BAN789"]});

// 这样子修改的数据除了user_id  和  password   有数据,其余为空
db.userdetails.update({"user_id" : "QRSTBWN"},{"user_id" : "QRSTBWN","password" :"NEWPASSWORDs"});

db.test0.update( { "count" : { $gt : 1 } } , { $set : { "test2" : "OK"} } ); 
// -----------------------------------------------------

查询

// ------------------------查询-----------------------------

// 查看数据
db.col.find()

// pretty() 方法以格式化的方式来显示所有文档
db.col.find().pretty()

// 只返回一个文档
db.col.findOne()

AND OR 查询

// AND OR 查询 
// WHERE by='w3cschool' AND title='MongoDB 教程'
db.col.find({"by":"w3cschool", "title":"MongoDB 教程"}).pretty()

// WHERE by='w3cschool' OR title='MongoDB 教程'
db.col.find({$or:[{"by":"w3cschool"},{"title": "MongoDB 教程"}]}).pretty()

// where likes>50 AND (by = 'w3cschool' OR title = 'MongoDB 教程')
db.col.find({"likes": {$gt:50}, $or: [{"by": "w3cschool"},{"title": "MongoDB 教程"}]}).pretty()

条件查询

// (>) 大于 - $gt
// (<) 小于 - $lt
// (>=) 大于等于 - $gte
// (<= ) 小于等于 - $lte

// 插入测试数据

// 清空集合 "col" 的数据
db.col.remove({})

db.col.insert({
    title: 'PHP 教程', 
    description: 'PHP 是一种创建动态交互性站点的强有力的服务器端脚本语言。',
    by: 'w3cschool',
    url: 'http://www.w3cschool.cn',
    tags: ['php'],
    likes: 200
})
db.col.insert({title: 'Java 教程', 
    description: 'Java 是由Sun Microsystems公司于1995年5月推出的高级程序设计语言。',
    by: 'w3cschool',
    url: 'http://www.w3cschool.cn',
    tags: ['java'],
    likes: 150
})
db.col.insert({title: 'MongoDB 教程', 
    description: 'MongoDB 是一个 Nosql 数据库',
    by: 'w3cschool',
    url: 'http://www.w3cschool.cn',
    tags: ['mongodb'],
    likes: 100
})

db.col.find()


db.col.find({"likes" : {$gt : 100}})

// 获取"col"集合中 "likes" 大于100,小于 200 的数据
db.col.find({likes : {$lt :200, $gt : 100}})

分页查询

// 分页 limit()
db.col.find({"title":"PHP 教程"}).limit(2)
// 注:如果你们没有指定limit()方法中的参数则显示集合中的所有数据。

db.col.find({"by":"w3cschool", "title":"MongoDB 教程"}).pretty().limit(1)

// skip()方法来跳过指定数量的数据,skip方法同样接受一个数字参数作为跳过的记录条数 默认为0
db.col.find({"title":"PHP 教程"}).limit(2).skip(3)

排序查询

// sort() 排序  1 为升序排列(默认),而-1是用于降序排列  
db.col.find().sort({"likes":1})

创建索引

// ensureIndex() 创建索引 1为指定按升序创建索引,降序来创建索引指定为-1
db.mycol.ensureIndex({"title":1})

聚合查询

// aggregate() 聚合 统计相同的title的数量
db.col.aggregate([{$group:{_id:"$title",num_likes:{$sum:1}}}])

在这里插入图片描述

监控命令

// mongo监控命令 进入到你安装的MongoDB目录下的bin目录 打开cmd窗口

// mongostat
// 状态检测工具,在命令行下使用。它会间隔固定时间获取mongodb的当前运行状态,并输出。如果你发现数据库突然变慢或者有其他问题的话,你第一手的操作就考虑采用mongostat来查看mongo的状态。

// mongotop
// 用来跟踪一个MongoDB的实例,查看哪些大量的时间花费在读取和写入数据。 mongotop提供每个集合的水平的统计数据。默认情况下,mongotop返回值的每一秒。
 











本课题设计了一种利用Matlab平台开发的植物叶片健康状态识别方案,重点融合了色彩与纹理双重特征以实现对叶片病害的自动化判别。该系统构建了直观的图形操作界面,便于用户提交叶片影像并快速获得分析结论。Matlab作为具备高效数值计算与数据处理能力的工具,在图像分析与模式分类领域应用广泛,本项目正是借助其功能解决农业病害监测的实际问题。 在色彩特征分析方面,叶片影像的颜色分布常与其生理状态密切相关。通常,健康的叶片呈现绿色,而出现黄化、褐变等异常色彩往往指示病害或虫害的发生。Matlab提供了一系列图像处理函数,例如可通过色彩空间转换与直方图统计来量化颜色属性。通过计算各颜色通道的统计参数(如均值、标准差及主成分等),能够提取具有判别力的色彩特征,从而为不同病害类别的区分提供依据。 纹理特征则用于描述叶片表面的微观结构与形态变化,如病斑、皱缩或裂纹等。Matlab中的灰度共生矩阵计算函数可用于提取对比度、均匀性、相关性等纹理指标。此外,局部二值模式与Gabor滤波等方法也能从多尺度刻画纹理细节,进一步增强病害识别的鲁棒性。 系统的人机交互界面基于Matlab的图形用户界面开发环境实现。用户可通过该界面上传待检图像,系统将自动执行图像预处理、特征抽取与分类判断。采用的分类模型包括支持向量机、决策树等机器学习方法,通过对已标注样本的训练,模型能够依据新图像的特征向量预测其所属的病害类别。 此类课题设计有助于深化对Matlab编程、图像处理技术与模式识别原理的理解。通过完整实现从特征提取到分类决策的流程,学生能够将理论知识与实际应用相结合,提升解决复杂工程问题的能力。总体而言,该叶片病害检测系统涵盖了图像分析、特征融合、分类算法及界面开发等多个技术环节,为学习与掌握基于Matlab的智能检测技术提供了综合性实践案例。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

GG_com

1分也是爱!!!!!!!!!!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值