MongoDB教程
+ -

MongoDB $type操作符

2019-09-09 1 0

描述

在本章节中,我们将继续讨论MongoDB中条件操作符 $type。

$type操作符是基于BSON类型来检索集合中匹配的数据类型,并返回结果。

MongoDB 中可以使用的类型如下表所示:

类 型 数 字 备 注
Double 1
String 2
Object 3
Array 4
Binary data 5
Undefined 6 已废弃。
Object id 7
Boolean 8
Date 9
Null 10
Regular Expression 11
JavaScript 13
Symbol 14
JavaScript (with scope) 15
32-bit integer 16
Timestamp 17
64-bit integer 18
Min key 255 Query with -1.
Max key 127

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

简单的集合”col”:

 >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 操作符 - $type 实例

如果想获取 “col” 集合中 title 为 String 的数据,你可以使用以下命令:

db.col.find({"title" : {$type : 2}})
或
db.col.find({"title" : {$type : 'string'}})

输出结果为:

{ "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 }

0 篇笔记 写笔记

ProtcolBuffer基础原理
Protocol Buffer由Google出品的一款轻量而高效的数据序列化和反序列化的方法,下面的我们来介绍一下Protocol Buffer的内部实现原理。1.类实例编码包括数据的编解码和函数方法的还原2.ProtcolBuffer的数据类型TypeMeaningUsed For0Varinti......
Python3 集合Set intersection_update()方法
intersection_update() 方法用于移除两个或更多集合中都不重叠的元素,即计算交集。intersection_update() 方法不同于 intersection() 方法,因为 intersection()方法是返回一个新的集合,而intersection_update() 方法......
Java 运算符
计算机的最基本用途之一就是执行数学运算,作为一门计算机语言,Java也提供了一套丰富的运算符来操纵变量。我们可以把运算符分成以下几组:算术运算符关系运算符位运算符逻辑运算符赋值运算符其他运算符算术运算符算术运算符用在数学表达式中,它们的作用和在数学中的作用一样。下表列出了所有的算术运算符。表格中的实......
Java Java 9 钻石操作符(Diamond Operator)
钻石操作符是在 java 7 中引入的,可以让代码更易读,但它不能用于匿名的内部类。在 java 9 中, 它可以与匿名的内部类一起使用,从而提高代码的可读性。考虑以下 Java 9 之前的代码:实例public class Tester { public static void main(St......
MongoDB 固定集合
MongoDB 固定集合(CappedCollections)是性能出色且有着固定大小的集合,对于大小固定,我们可以想象其就像一个环形队列,当集合空间用完后,再插入的元素就会覆盖最初始的头部的元素!创建固定集合我们通过createCollection来创建一个固定集合,且capped选项设置为tru......
C# 泛型(Generic)
泛 型(Generic)允许您延迟编写类或方法中的编程元素的数据类型的规范,直到实际在程序中使用它的时候。换句话说,泛型允许您编写一个可以与任何数据类型一起工作的类或方法。您可以通过数据类型的替代参数编写类或方法的规范。当编译器遇到类的构造函数或方法的函数调用时,它会生成代码来处理指定的数据类型。下......
Redis TYPE key
Redis TYPE 命令用于获取存储在键(key)中的值的数据类型。TYPE key - 语法以下是Redis TYPE 命令的基本语法。redis 127.0.0.1:6379> TYPE KEY_NAME首先,在Redis中创建一些键并在其中设置一些值。redis 127.0.0.1:6......
GO语言 Map(集合)
Map 是一种无序的键值对的集合。Map 最重要的一点是通过 key 来快速检索数据,key 类似于索引,指向数据的值。Map 是一种集合,所以我们可以像迭代数组和切片那样迭代它。不过,Map 是无序的,我们无法决定它的返回顺序,这是因为 Map 是使用 hash表来实现的。定义 Map可以使用内建......
Lua 运算符运算符
运算符是一个特殊的符号,用于告诉解释器执行特定的数学或逻辑运算。Lua提供了以下几种运算符类型:算术运算符关系运算符逻辑运算符其他运算符算术运算符下表列出了 Lua 语言中的常用算术运算符,设定 A 的值为10,B 的值为 20:操作符描述实例 +加法A + B 输出结果 30 -减法A - B......
Python3 集合union()方法
union() 方法返回两个集合的并集,即包含了所有集合的元素,重复的元素只会出现一次。语法union() 方法语法:set.union(set1, set2...)参数set1 — 必需,合并的目标集合set2 — 可选,其他要合并的集合,可以多个,多个使用逗号 , 隔开。返回值返回一个新集合。实......
Python3 集合update() 方法
update() 方法用于修改当前集合,可以添加新的元素或集合到当前集合中,如果添加的元素在集合中已存在,则该元素只会出现一次,重复的会忽略。语法update() 方法语法:set.update(set)参数set — 必需,可以是元素或集合返回值无。实例合并两个集合,重复元素只会出现一次: ......
Bochs private_colormap
请求GUI创建并使用自己的非共享colormap。在Bochs窗口中时将使用此颜色贴图。如果未启用,则可以使用共享颜色映射方案。再次,enabled=1打开此功能,0关闭它。实例 private_colormap: enabled=1......
C# 集合(Collection)
集合(Collection)类是专门用于数据存储和检索的类。这些类提供了对栈(stack)、队列(queue)、列表(list)和哈希表(hashtable)的支持。大多数集合类实现了相同的接口。集合(Collection)类服务于不同的目的,如为元素动态分配内存,基于索引访问列表项等等。这些类创建......
Python3 集合intersection() 方法
intersection() 方法用于返回两个或更多集合中都包含的元素,即交集。语法intersection() 方法语法:set.intersection(set1, set2 ... etc)参数set1 — 必需,要查找相同元素的集合set2 — 可选,其他要查找相同元素的集合,可以多个,多个......
MongoDB 删除集合
本章节我们为大家介绍如何使用 MongoDB 来删除集合。MongoDB 中使用 drop() 方法来删除集合。语法格式:db.collection.drop()参数说明:无返回值如果成功删除选定集合,则 drop() 方法返回 true,否则返回 false。实例在数据库 mydb 中,我们可以先......
取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

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

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