MongoDB教程
+ -

MongoDB 条件操作符

2019-09-09 1 0

描述

条件操作符用于比较两个表达式并从mongoDB集合中获取数据。

在本章节中,我们将讨论如何在MongoDB中使用条件操作符。

MongoDB中条件操作符有:

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

我 们使用的数据库名称为”bytekits” 我们的集合名称为”col”,以下为我们插入的数据。

为了方便测试,我们可以先使用以下命令清空集合 “col” 的数据:

db.col.remove({})

插入以下数据

>db.col.insert({
    title: 'PHP 教程',    description: 'PHP 是一种创建动态交互性站点的强有力的服务器端脚本语言。',
    by: '字节流',
    url: 'http://www.bytekits.com',
    tags: ['php'],
    likes: 200
})





>db.col.insert({title: 'Java 教程',    description: 'Java 是由Sun Microsystems公司于1995年5月推出的高级程序设计语言。',
    by: '字节流',
    url: 'http://www.bytekits.com',
    tags: ['java'],
    likes: 150
})





>db.col.insert({title: 'MongoDB 教程',    description: 'MongoDB 是一个 Nosql 数据库',
    by: '字节流',
    url: 'http://www.bytekits.com',
    tags: ['mongodb'],
    likes: 100
})

使用find()命令查看数据:

> db.col.find()
{ "id" : ObjectId("56066542ade2f21f36b0313a"), "title" : "PHP 教程", "description" : "PHP 是一种创建动态交互性站点的强有力的服务器端脚本语言。", "by" : "字节流", "url" : "http://www.bytekits.com", "tags" : [ "php" ], "likes" : 200 }
{ "id" : ObjectId("56066549ade2f21f36b0313b"), "title" : "Java 教程", "description" : "Java 是由Sun Microsystems公司于1995年5月推出的高级程序设计语言。", "by" : "字节流", "url" : "http://www.bytekits.com", "tags" : [ "java" ], "likes" : 150 }
{ "id" : ObjectId("5606654fade2f21f36b0313c"), "title" : "MongoDB 教程", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "字节流", "url" : "http://www.bytekits.com", "tags" : [ "mongodb" ], "likes" : 100 }

MongoDB (>) 大于操作符 - $gt

如果你想获取 “col” 集合中 “likes” 大于 100 的数据,你可以使用以下命令:

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

类似于SQL语句:

Select * from col where likes > 100;

输出结果:

> db.col.find({likes : {$gt : 100}})
{ "id" : ObjectId("56066542ade2f21f36b0313a"), "title" : "PHP 教程", "description" : "PHP 是一种创建动态交互性站点的强有力的服务器端脚本语言。", "by" : "字节流", "url" : "http://www.bytekits.com", "tags" : [ "php" ], "likes" : 200 }
{ "id" : ObjectId("56066549ade2f21f36b0313b"), "title" : "Java 教程", "description" : "Java 是由Sun Microsystems公司于1995年5月推出的高级程序设计语言。", "by" : "字节流", "url" : "http://www.bytekits.com", "tags" : [ "java" ], "likes" : 150 }
>

MongoDB(>=)大于等于操作符 - $gte

如果你想获取”col”集合中 “likes” 大于等于 100 的数据,你可以使用以下命令:

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

类似于SQL语句:

Select * from col where likes >=100;

输出结果:

> db.col.find({likes : {$gte : 100}})
{ "id" : ObjectId("56066542ade2f21f36b0313a"), "title" : "PHP 教程", "description" : "PHP 是一种创建动态交互性站点的强有力的服务器端脚本语言。", "by" : "字节流", "url" : "http://www.bytekits.com", "tags" : [ "php" ], "likes" : 200 }
{ "id" : ObjectId("56066549ade2f21f36b0313b"), "title" : "Java 教程", "description" : "Java 是由Sun Microsystems公司于1995年5月推出的高级程序设计语言。", "by" : "字节流", "url" : "http://www.bytekits.com", "tags" : [ "java" ], "likes" : 150 }
{ "id" : ObjectId("5606654fade2f21f36b0313c"), "title" : "MongoDB 教程", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "字节流", "url" : "http://www.bytekits.com", "tags" : [ "mongodb" ], "likes" : 100 }
>

MongoDB (<) 小于操作符 - $lt

如果你想获取”col”集合中 “likes” 小于 150 的数据,你可以使用以下命令:

db.col.find({likes : {$lt : 150}})

类似于SQL语句:

Select * from col where likes < 150;

输出结果:

> db.col.find({likes : {$lt : 150}})
{ "id" : ObjectId("5606654fade2f21f36b0313c"), "title" : "MongoDB 教程", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "字节流", "url" : "http://www.bytekits.com", "tags" : [ "mongodb" ], "likes" : 100 }

MongoDB (<=) 小于操作符 - $lte

如果你想获取”col”集合中 “likes” 小于等于 150 的数据,你可以使用以下命令:

db.col.find({likes : {$lte : 150}})

类似于SQL语句:

Select * from col where likes <= 150;

输出结果:

> db.col.find({likes : {$lte : 150}})
{ "id" : ObjectId("56066549ade2f21f36b0313b"), "title" : "Java 教程", "description" : "Java 是由Sun Microsystems公司于1995年5月推出的高级程序设计语言。", "by" : "字节流", "url" : "http://www.bytekits.com", "tags" : [ "java" ], "likes" : 150 }
{ "id" : ObjectId("5606654fade2f21f36b0313c"), "title" : "MongoDB 教程", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "字节流", "url" : "http://www.bytekits.com", "tags" : [ "mongodb" ], "likes" : 100 }

MongoDB 使用 (<) 和 (>) 查询 - $lt 和 $gt

如果你想获取”col”集合中 “likes” 大于100,小于 200 的数据,你可以使用以下命令:

db.col.find({likes : {$lt :200, $gt : 100}})

类似于SQL语句:

Select * from col where likes>100 AND  likes<200;

输出结果:

> db.col.find({likes : {$lt :200, $gt : 100}})
{ "id" : ObjectId("56066549ade2f21f36b0313b"), "title" : "Java 教程", "description" : "Java 是由Sun Microsystems公司于1995年5月推出的高级程序设计语言。", "by" : "字节流", "url" : "http://www.bytekits.com", "tags" : [ "java" ], "likes" : 150 }
>

0 篇笔记 写笔记

SQLite 简介
SQLite是一个轻型的数据库,无需任何服务,无需任何配置的绿色数据库。SQLite是一个进程内库,它实现了一个自包含、无服务器、零配置、事务性SQL数据库引擎。SQLite的代码在公共域中,因此可以免费用于任何目的,无论是商业还是私有。SQLite是世界上部署最广泛的数据库,其应用程序比我们所能统......
ProtcolBuffer基础原理
Protocol Buffer由Google出品的一款轻量而高效的数据序列化和反序列化的方法,下面的我们来介绍一下Protocol Buffer的内部实现原理。1.类实例编码包括数据的编解码和函数方法的还原2.ProtcolBuffer的数据类型TypeMeaningUsed For0Varinti......
SQLite 数据插入insert into
和常用数据库一致,SQLite也提供insert SQL语句用于向数据库的表中添加新的数据记录。语法INSERT INTO table_name [(col_name1,col_name2,...col_nameN)]values (value1,value2,...,value2),.........
Nginx PHP7+MySQL5.7(LNMP)环境配置
在前面几篇文章中,我们已经介绍并演示安装 Nginx的几种方式,在开始本篇文章的阅读和实践之前,建议先阅读”Nginx安装配置”:http://www.bytekits.com/nginx/nginx-install.html ,在上面文章的基础之上,我们再添加 PHP7 的安装配置以及MySQL的......
SQL INSERT INTO
INSERT INTO 语句用于向表格中插入新的行。语法INSERT INTO 表名称 VALUES (值1, 值2,....)我们也可以指定所要插入数据的列:INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....)插入新的行“Persons”......
PHP MySQL Order By排序
PHP mysql_query()函数用于使用order by子句执行select查询将结果集排序。 由于从PHP5.5版本起,不推荐使用mysql_query()函数。 现在,建议使用以下2种替代方法之一。mysqli_query()PDO::__query()order by子句可用于按列升序或......
MySQL 连接join
在前几章节中,我们已经学会了如何在一张表中读取数据,这是相对简单的,但是在真正的应用中经常需要从多个数据表中读取数据。本章节我们将向大家介绍如何使用 MySQL 的 JOIN 在两个或多个表中查询数据。你可以在 SELECT, UPDATE 和 DELETE 语句中使用 Mysql 的 JOIN 来......
MySQL PHP语法
MySQL 可应用于多种语言,包括 PERL, C, C++, JAVA 和 PHP。 在这些语言中,Mysql在PHP的web开发中是应用最广泛。在本教程中我们大部分实例都采用了 PHP 语言。如果你想了解 Mysql 在 PHP 中的应用,可以访问我们的 PHP教程。PHP提供了多种方式来访问和......
SQL SELECT DISTINCT
在表中,可能会包含重复值。这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值。关键词 DISTINCT 用于返回唯一不同的值。语法:SELECT DISTINCT 列名称 FROM 表名称使用 DISTINCT 关键词如果要从 “Company” 列中选取所有的值,我们需要使用 ......
SQL LEFT JOIN
LEFT JOIN 关键字会从左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中没有匹配的行。LEFT JOIN 关键字语法SELECT column_name(s)FROM table_name1LEFT JOIN table_name2 ON tabl......
MySQL 删除数据表
MySQL中删除数据表是非常容易操作的, 但是你再进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失。语法以下为删除MySQL数据表的通用语法:DROP TABLE table_name ;在命令提示窗口中删除数据表在mysql>命令提示窗口中删除数据表SQL语句为 DROP TA......
SQLite 条件语句where
一般的SQL语句如不加限制条件,默认是结全表进行操作,这显然不是我们想要的。我们需要的是对满足某个条件的数据记录进行操作。而这个条件就是通过where语句来实现的。SQLite条件语句where用于过滤相关的sql操作结果。用于select语句查询结果的过滤用于update语句更新数据的过滤用于de......
Java 运算符
计算机的最基本用途之一就是执行数学运算,作为一门计算机语言,Java也提供了一套丰富的运算符来操纵变量。我们可以把运算符分成以下几组:算术运算符关系运算符位运算符逻辑运算符赋值运算符其他运算符算术运算符算术运算符用在数学表达式中,它们的作用和在数学中的作用一样。下表列出了所有的算术运算符。表格中的实......
MySQL WHERE 子句
我们知道从 MySQL 表中使用 SQL SELECT 语句来读取数据。如需有条件地从表中选取数据,可将 WHERE 子句添加到 SELECT 语句中。语法以下是 SQL SELECT 语句使用 WHERE 子句从数据表中读取数据的通用语法:SELECT field1, field2,...fiel......
SQL AS
通过使用 SQL,可以为列名称和表名称指定别名(Alias)。SQL Alias表的 SQL Alias 语法SELECT column_name(s) FROM table_name AS alias_name列的 SQL Alias 语法SELECT column_name AS alias_n......
取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

您的支持,是我们前进的动力!