Robo3T使用小结

简介: Robo3T使用小结

1,设置时间显示



在未设置前数据内的时间数都比当前时间少8小时。比如2019-2-27 15:00,在MongoDB里面时间就是2019-2-27 7:00


设置很简单,点击Options==>Display Date In...==>将UTC改为Local Timezone即可


aHR0cHM6Ly91cGxvYWQtaW1hZ2VzLmppYW5zaHUuaW8vdXBsb2FkX2ltYWdlcy8yODM5MzE3LTQyMDNhMDAxODdmNWZjZWMucG5n.png


右上角这个长条请忽略


2,查询等于



db.getCollection('lessons').find({is_online:1})


大于等于


db.getCollection('lessons').find({"scheduled_at:{$gte:ISODate("2019-01-07T02:00:00.000Z")}})


小于等于


$lte:ISODate("2019-01-07T02:00:00.000Z")


大于或小于,就把后面的e去掉,即:lt gt


3,查询表里的数据条数



db.getCollection('curriculums').find({}).count();


即,后面加上 .count()


4,col 集合中的数据按字段 likes 的降序排列:



db.col.find({}).sort({"likes":-1})


5,update数据



db.courses.updateMany(
{ "cid" : "5bc562345dbd0e4618aa9484"},
{ set:{字段名:数值}}
)

6,查询字段内的字段



数据内的字段是这样的,很多数据里是多个学生,这里就想查询包含学生id是34的:


"teachers" : [ 
        1.0, 
        2.0, 
        3.0
    ],
    "students" : [ 
        {
            "id" : 8,
            "name" : "测试学生3",
            "age" : 8,
            "sex" : "male",
            "region" : "上海"
        }
    ]


想要查出id是34的数据


db.getCollection('classes').find({"students.id":34})


刚还尝试的一个方式是:全文检索


MongoDB 在 2.6 版本以后是默认开启全文检索的,如果你使用之前的版本,你需要使用以下代码来启用全文检索:


db.adminCommand({setParameter:true,textSearchEnabled:true})


对 post_text 字段建立全文索引


db.posts.ensureIndex({post_text:"text"})
db.getCollection('classes').ensureIndex({students:"text"})


对students字段建立全文索引


使用全文索引


db.posts.find({$text:{$search:"runoob"}})
db.getCollection('classes').find({$text:{$search:"23401"}})


搜索内容不对,可能的原因是id是int类型。全文索引是针对string类型的。


7,模糊查询



sql:
select * from user where name like "%花%";
mongo:
db.user.find(name:/花/);


例子:查看students里的name包含 ”测试“ 的数据。


db.getCollection('classes').find({"students.name":/测试/})


若是以a为开头的:


db.getCollection('classes').find({"students.name":/^测试/})


8,数组查询



实例,一节课的老师的id可能有多个,这样:


"teachers" : [ 391, 659, 1534 ]


需求:查询包含老师id为1534的所有的数据

很简单~


db.getCollection('classes').find({teachers:1534})


9,查询只显示部分字段



classes表中只显示id和title两个字段

下面的 status:"700" 为查询条件


db.getCollection('classes').find({status:"700"},{_id:1,title:1})


10,给数组追加一个数据



需求:给数据内的老师id多加一个1534,即让老师多一节课,如果已经存在了就不添加了。


db.getCollection('classes').update({"_id" : ObjectId("5bc995e391e99773f9096114")},{$addToSet:{ "teachers":NumberInt(1539)}})


这里使用的是$addToSet


添加2个数据。需要和$each配合


db.getCollection('classes').update({"_id" : ObjectId("5bc995e391e99773f9096114")},{$addToSet:{ "teachers":{$each:[NumberInt(11232),NumberInt(2800)]}})


11,查询一个字段为不同值的时候



需求:title为‘K2D23’或‘K2D41’或’S1050‘的数据

db.getCollection('classes').find({title:{$in:['K2D23','K2D41','S1050']}})

这里使用的是$in


12,更多网站



MongoDB 学习笔记(三):查询

这个文章看了,就发现查询里,还有很多内容的。


目录
相关文章
mac上datagrip.vmoptions文件编辑错误导致DataGrip软件打不开
mac上datagrip.vmoptions文件编辑错误导致DataGrip软件打不开
|
网络协议 数据可视化 Unix
Xshell 7(SSH远程终端工具) v7.0.0109 官方中文正式版(附文件+安装教程)
Xshell 7(SSH远程终端工具) v7.0.0109 官方中文正式版(附文件+安装教程)
12801 0
Xshell 7(SSH远程终端工具) v7.0.0109 官方中文正式版(附文件+安装教程)
|
5月前
|
SQL 关系型数据库 BI
草率了!没想pgadmin这么强大
草率了!没想pgadmin这么强大
307 0
|
6月前
|
安全 Linux 程序员
入职必会-开发环境搭建34-FinalShell下载和安装
在企业开发中,Linux服务器一般都是在远程的机房中,我们不可能坐在机房里面操作服务器上的Linux系统,所以在学习Linux之前我们需要远程连接Linux系统。工作中一般使用SSH协议远程连接Linux。
124 1
入职必会-开发环境搭建34-FinalShell下载和安装
|
6月前
|
关系型数据库 MySQL 数据库
入职必会-开发环境搭建20-SQLYog下载和安装
SQLyog 是一款连接数据库的第三方工具,由Webyog公司开发。它是一个易于操作、轻松方便管理数据库的图形化管理工具。SQLyog 提供了快速而简洁的界面,使用户可以在任何地点通过网络有效地管理MySQL数据库。
139 2
|
6月前
|
Oracle NoSQL 关系型数据库
入职必会-开发环境搭建21-Navicat下载和安装
Navicat 是一套可创建多个连接的数据库管理工具,支持 MySQL、MariaDB、MongoDB、SQL Server、Oracle、PostgreSQL 和 SQLite 等数据库。它是一款专为 MySQL 设计的可视化数据库 GUI 管理工具,可以远程管理 MySQL 数据库。Navicat 提供了直观的 GUI,使用户可以轻松地管理多种数据库,包括 MySQL、Redis、MariaDB、MongoDB、SQL Server、SQLite、Oracle 和 PostgreSQL。它的功能包括连接数据库、创建、传输、导出、导入、查找、生成等操作,还可以连接 Oracle、MySQL、
|
6月前
|
SQL IDE 关系型数据库
入职必会-开发环境搭建18-DataGrip下载和安装
DataGrip是一款由JetBrains开发的跨平台数据库集成开发环境(IDE)软件,支持Windows、macOS和Linux操作系统。它提供了丰富的功能和工具,旨在简化数据库开发和管理的过程。下面是DataGrip的主要特点和功能。
122 0
|
8月前
|
网络协议 关系型数据库 MySQL
安卓手机termux上安装MariaDB数据库并实现公网环境下的远程连接
安卓手机termux上安装MariaDB数据库并实现公网环境下的远程连接
272 0
|
8月前
|
关系型数据库 MySQL 开发工具
【开发工具专题_02】windows操作系统下载与安装mysql8.0.18教程
【开发工具专题_02】windows操作系统下载与安装mysql8.0.18教程
81 0
|
Oracle 关系型数据库 数据库连接
Windows系统安装配置Oracle数据库连接工具PLSQL
Windows系统安装配置Oracle数据库连接工具PLSQL
154 0