共计 739 个字符,预计需要花费 2 分钟才能阅读完成。
mongon 常用命令 3 – 数组匹配
1.mongon 数组标签 tag 匹配例子:
数据库是这样的:
我想要的是从我的 tag 标签返回搜寻到的关键词:
(1)数组中单个匹配:(单个匹配,只有数组中含有这个关键字,那么都会返回)
db.ss_tests.find({tag:'小学'} )
后果:
数据很芜杂,去一下不必要的字段:字段后加 0,示意不显示。
db.ss_tests.find({tag:'小学'},{content:0,_id:0,id:0} )
后果这样就很简洁了:
(2)多个条件匹配:
db.ss_tests.find({ tag:{$all: ['高中',"语文"]} },{content:0,id:0,_id:0} )
运行后果:
加了关键字 $all, 它会返回文档中符合条件的数组,只有蕴含高中,语文就会返回;而且会漠视数组中原本该关键字的程序,和数组是否存在其它元素。
然而你如果这样匹配你的数据库:
db.ss_tests.find({ tag: ['高中',"语文"] } )
后果将会空白,返回没有什么,它的意思是查问所有数组元素为高中,语文的,然而只能蕴含高中,语文这两个关键字,其它不行,因为我数据库的标签都是三个元素的,所以无奈打印出后果:
官网文档存在加 all 与不加 all 的阐明,上面附上原阐明:
不加 all:
翻译:上面的这个例子会查问所有文档中的 tags 数组,这些数组必须蕴含确切的两个元素“red”和“blank”,并且程序也是特定的,就是即便存在有的文档含有 red 和 blank,然而程序扭转,它也不会反馈给你。
加了 all:
翻译:相同,如果你心愿找到的数组蕴含下面的这两个元素 red 和 blank,然而疏忽其它元素是否存在,并且也疏忽它在数组中的程序,那么你能够应用 $all 这个运算符
-
- –
(2)待更……
正文完