mongo_shell()

阅读(775) 标签: 查询, mongodb数据库, 结果值,

描述:

查询并操作数据库,返回结果值。

语法:

mongo_shell(fd,s)

备注:

外部库函数,使用db.runCommand()接口实现对数据库的操作并返回最外层序表。

选项:

@x

执行完毕后自动关闭连接,如果返回结果是游标,则在游标关闭时关闭连接

@d

返回序表

@c

返回游标,必须与@d选项同时使用,否则无效

参数:

fd

mongo数据库连接对象

s 

json字符串,相当于db.runCommand(str)中的str

返回值:

最外层序表

示例:

 

A

 

1

=mongo_open("mongodb://localhost:27017/mydb")

连接mongo servermydb

2

=mongo_shell(A1,"{'find':'emp'}")

 

返回最外层序表

3

=mongo_shell@d(A1,"{'find':'emp'}")

查询mydb库中的emp集合中的记录,结果返回序表

 

4

=mongo_shell@dc(A1,"{'find':'emp',batchSize:2,filter:{GENDER:'F'}}")

查询性别为F的记录,每次查询返回2条记录,结果返回游标

5

=A4.fetch()

 

6

=mongo_shell@x(A1,"{'count':'emp'}")

查询总记录数,使用@x选项,返回结果后关闭数据库连接

 

7

=mongo_shell(A1,"{'find':'emp',projection:{NAME:1,DEPT:1,SALARY:1},sort:{SALARY:1}}")

显示NAMEDEPTSALARY字段组成的序表,并按SALARY升序

8

=mongo_shell@d(A1,"{'insert':'emp',documents:[{_id:1,NAME:'Lily',GENDER:'M',DEPT:'Sale',SALARY:13500}]}")

emp中插入数据

9

=mongo_shell(A1,"{'findAndModify':'emp',query:{'NAME':'Lily'},update:{'$set':{SALARY:10000}}}")

empNAMELilySALARY修改为10000

10

=mongo_shell(A1,"{'distinct':'emp',key:'DEPT'}")

emp中查找DEPT字段的不同值

11

=mongo_close(A1)

关闭数据库连接