- 浏览: 93669 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (90)
- spring mvc (7)
- hudson(持续集成引擎) (1)
- jquery (5)
- mongodb (2)
- httpclient (1)
- spring3.1 (4)
- hibernate4.1 (6)
- tomcat;database; (1)
- mysql;存储引擎; (1)
- dwr (1)
- httpsession (2)
- symbian (1)
- lighttpd (3)
- nginx (3)
- apache (2)
- 链表 (1)
- jetty (2)
- Redis (1)
- memcached (1)
- squid (1)
- 反向代理 (1)
- 360doc (1)
- struts2 (2)
- mail (1)
- annotation (2)
- captcha (1)
- ehcache (2)
- ThreadPoolTaskExecutor (1)
- json (2)
- tomcat (3)
- cookie (1)
- session (1)
- 面试 (3)
- hadoop (3)
- JDK (1)
- 内存 (1)
- hibernate二级缓存 (1)
- hadoop mapreduce (1)
- linux (2)
- spring security (2)
- http (2)
- excel (1)
- unix (1)
- compass (1)
- lucene (1)
- kindeditor (1)
- C++ (1)
- java (1)
- cas (1)
- eclipse (2)
- olap (1)
- oltp (1)
- Git (1)
- BI (1)
- lago (1)
- 存储过程 (2)
- 书本 (1)
- VMware虚拟机 (1)
- 网络技术 (1)
- 登陆 (1)
- SapphireCache (1)
- ssl (1)
- webservice (1)
- RPC (1)
- 连接池 (1)
- google api (1)
- oracle (1)
- javascript (1)
- mysql (1)
- 离线文件 (0)
- 多线程 (0)
最新评论
-
davinsam:
import org.mysterylab.utopiafra ...
hibernate dao -
davinsam:
dao类使用说明弄错了,怎么跟basehibernatedao ...
hibernate dao -
like_shadows:
真不错,顶
mongodb基本知识
转载来自http://sha0k.iteye.com/blog/1375055
先去www.mongodb.org 下载,安装就直接解压到你就好了。
假设windows 32bit机,建立目录D:\mongodb 把压缩包bin目录下的exe全部放到mongodb目录下,然后建立一个data文件夹(D:\mongodb\data) 这个data目录就是用来存放数据的,默认是C盘data\db目录。
bin目录下的
mongod.exe - 数据库服务器.
mongo.exe - 管理员shell
当我们使用自定义的数据存储文件目录D:\mongodb\data时,使用cmd 进入D:\mongdodb目录
输入mongod --dbpath D:\mongodb\data用来启动时指定数据存储目录。
然后运行mongo.exe就行了。
使用help命令就可以查看所有想要得到的命令。
下面进入开发学习阶段:
其实我真的很想就复制粘贴官网的文档,因为真的很容易懂,都懒得翻译写出来了,唉。。。。。
启动之后,将看到
By default the shell connects to database "test" on localhost. You then see:
Sql代码
MongoDB shell version: <whatever>
url: test
connecting to: test
type "help" for help
>
"connecting to: " 显示了正在连接和使用的数据库。想要使用其它库, 键入:
Sql代码
> use mydb
switched to db mydb
用use命令切换数据库并不能立即创建数据库,数据库将在第一次插入数据时延迟创建。可以使用show dbs查看数据库。
Inserting Data into A Collection
下面的shell命令,创建了两个对象j和t,并把它们存入sha0k集合中,K-V,就像map一样,称它集合,不为过吧。
Sql代码
> j = { name : "mongo" };
{"name" : "mongo"}
> t = { x : 3 };
{ "x" : 3 }
> db.sha0k.save(j);
> db.sha0k.save(t);
> db.sha0k.find();
{ "_id" : ObjectId("4f2167ee......"), "name" : "mongo" }
{ "_id" : ObjectId("4f2168f....."), "x" : 3 }
>
对象Id太长了,我没写完,然后再使用show dbs就可以看到mydb已经在数据库列表中了,库创建完成。
有几点是需要注意的(我是真的懒得翻译了,见谅):
We did not predefine the collection. The database creates it automatically on the first insert.(没有预先定义集合)
The documents we store can have different fields - in fact in this example, the documents have no common data elements at all. In practice, one usually stores documents of the same structure within collections.()
Upon being inserted into the database, objects are assigned an object ID (if they do not already have one) in the field _id .
When you run the above example, your ObjectID values will be different.
一次添加多个对象:
Sql代码
> for (var i = 1; i <= 20; i++) db.sha0k.save({x : 4, j : i});
> db.sha0k.find();
{ "_id" : ObjectId("4c2209f9f3924d31102bd84a"), "name" : "mongo" }
{ "_id" : ObjectId("4c2209fef3924d31102bd84b"), "x" : 3 }
{ "_id" : ObjectId("4c220a42f3924d31102bd856"), "x" : 4, "j" : 1 }
{ "_id" : ObjectId("4c220a42f3924d31102bd857"), "x" : 4, "j" : 2 }
{ "_id" : ObjectId("4c220a42f3924d31102bd858"), "x" : 4, "j" : 3 }
{ "_id" : ObjectId("4c220a42f3924d31102bd859"), "x" : 4, "j" : 4 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85a"), "x" : 4, "j" : 5 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85b"), "x" : 4, "j" : 6 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85c"), "x" : 4, "j" : 7 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85d"), "x" : 4, "j" : 8 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85e"), "x" : 4, "j" : 9 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85f"), "x" : 4, "j" : 10 }
{ "_id" : ObjectId("4c220a42f3924d31102bd860"), "x" : 4, "j" : 11 }
{ "_id" : ObjectId("4c220a42f3924d31102bd861"), "x" : 4, "j" : 12 }
{ "_id" : ObjectId("4c220a42f3924d31102bd862"), "x" : 4, "j" : 13 }
{ "_id" : ObjectId("4c220a42f3924d31102bd863"), "x" : 4, "j" : 14 }
{ "_id" : ObjectId("4c220a42f3924d31102bd864"), "x" : 4, "j" : 15 }
{ "_id" : ObjectId("4c220a42f3924d31102bd865"), "x" : 4, "j" : 16 }
{ "_id" : ObjectId("4c220a42f3924d31102bd866"), "x" : 4, "j" : 17 }
{ "_id" : ObjectId("4c220a42f3924d31102bd867"), "x" : 4, "j" : 18 }
has more
我一共插入了20个数据,这里只显示了18个,并在下面提示has more,这是因为shell限制一个迭代的游标只到20,所以要查看下面的,需要使用it命令,iterator。。。。
Sql代码
{ "_id" : ObjectId("4c220a42f3924d31102bd866"), "x" : 4, "j" : 17 }
{ "_id" : ObjectId("4c220a42f3924d31102bd867"), "x" : 4, "j" : 18 }
has more
> it
{ "_id" : ObjectId("4c220a42f3924d31102bd868"), "x" : 4, "j" : 19 }
{ "_id" : ObjectId("4c220a42f3924d31102bd869"), "x" : 4, "j" : 20 }
Accessing Data From a Query
有没有发现刚的办法很麻烦,20多个我就得打次it,40多个打两次,依次类推。。。。
有没有简单的办法呢,那就来看下面的,刚刚提到,mongodb 找到的数据指向都是游标。
Sql代码
> var cursor = db.sha0k.find();
> while (cursor.hasNext()) printjson(cursor.next());
{ "_id" : ObjectId("4c2209f9f3924d31102bd84a"), "name" : "mongo" }
{ "_id" : ObjectId("4c2209fef3924d31102bd84b"), "x" : 3 }
{ "_id" : ObjectId("4c220a42f3924d31102bd856"), "x" : 4, "j" : 1 }
{ "_id" : ObjectId("4c220a42f3924d31102bd857"), "x" : 4, "j" : 2 }
{ "_id" : ObjectId("4c220a42f3924d31102bd858"), "x" : 4, "j" : 3 }
{ "_id" : ObjectId("4c220a42f3924d31102bd859"), "x" : 4, "j" : 4 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85a"), "x" : 4, "j" : 5 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85b"), "x" : 4, "j" : 6 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85c"), "x" : 4, "j" : 7 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85d"), "x" : 4, "j" : 8 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85e"), "x" : 4, "j" : 9 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85f"), "x" : 4, "j" : 10 }
{ "_id" : ObjectId("4c220a42f3924d31102bd860"), "x" : 4, "j" : 11 }
{ "_id" : ObjectId("4c220a42f3924d31102bd861"), "x" : 4, "j" : 12 }
{ "_id" : ObjectId("4c220a42f3924d31102bd862"), "x" : 4, "j" : 13 }
{ "_id" : ObjectId("4c220a42f3924d31102bd863"), "x" : 4, "j" : 14 }
{ "_id" : ObjectId("4c220a42f3924d31102bd864"), "x" : 4, "j" : 15 }
{ "_id" : ObjectId("4c220a42f3924d31102bd865"), "x" : 4, "j" : 16 }
{ "_id" : ObjectId("4c220a42f3924d31102bd866"), "x" : 4, "j" : 17 }
{ "_id" : ObjectId("4c220a42f3924d31102bd867"), "x" : 4, "j" : 18 }
{ "_id" : ObjectId("4c220a42f3924d31102bd868"), "x" : 4, "j" : 19 }
{ "_id" : ObjectId("4c220a42f3924d31102bd869"), "x" : 4, "j" : 20 }
第二行的printjson()函数,可以从环境中理解出来,就是将对象以json数据格式打印出来,上面的例子是游标风格的迭代。
Sql代码
> var cursor = db.sha0k.find();
> printjson(cursor[4]);
{ "_id" : ObjectId("4c220a42f3924d31102bd858"), "x" : 4, "j" : 3 }
When using a cursor this way, note that all values up to the highest accessed (cursor[4] above) are loaded into RAM at the same time. This is inappropriate for large result sets, as you will run out of memory. Cursors should be used as an iterator with any query which returns a large number of elements.(请注意内存溢出)
数组访问方式:
Sql代码
> var arr = db.sha0k.find().toArray();
> arr[5];
{ "_id" : ObjectId("4c220a42f3924d31102bd859"), "x" : 4, "j" : 4 }
Specifying What the Query Returns
SELECT * FROM things WHERE x=4
Sql代码
> db.sha0k.find({x:4}).forEach(printjson);
{ "_id" : ObjectId("4c220a42f3924d31102bd856"), "x" : 4, "j" : 1 }
{ "_id" : ObjectId("4c220a42f3924d31102bd857"), "x" : 4, "j" : 2 }
{ "_id" : ObjectId("4c220a42f3924d31102bd858"), "x" : 4, "j" : 3 }
{ "_id" : ObjectId("4c220a42f3924d31102bd859"), "x" : 4, "j" : 4 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85a"), "x" : 4, "j" : 5 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85b"), "x" : 4, "j" : 6 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85c"), "x" : 4, "j" : 7 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85d"), "x" : 4, "j" : 8 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85e"), "x" : 4, "j" : 9 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85f"), "x" : 4, "j" : 10 }
{ "_id" : ObjectId("4c220a42f3924d31102bd860"), "x" : 4, "j" : 11 }
{ "_id" : ObjectId("4c220a42f3924d31102bd861"), "x" : 4, "j" : 12 }
{ "_id" : ObjectId("4c220a42f3924d31102bd862"), "x" : 4, "j" : 13 }
{ "_id" : ObjectId("4c220a42f3924d31102bd863"), "x" : 4, "j" : 14 }
{ "_id" : ObjectId("4c220a42f3924d31102bd864"), "x" : 4, "j" : 15 }
{ "_id" : ObjectId("4c220a42f3924d31102bd865"), "x" : 4, "j" : 16 }
{ "_id" : ObjectId("4c220a42f3924d31102bd866"), "x" : 4, "j" : 17 }
{ "_id" : ObjectId("4c220a42f3924d31102bd867"), "x" : 4, "j" : 18 }
{ "_id" : ObjectId("4c220a42f3924d31102bd868"), "x" : 4, "j" : 19 }
{ "_id" : ObjectId("4c220a42f3924d31102bd869"), "x" : 4, "j" : 20 }
A query document of the form { a:A, b:B, ... } means "where a==A and b==B and ...".
使用true关键字,只查找j的值结果集
SELECT j FROM things WHERE x=4
Sql代码
> db.sha0k.find({x:4}, {j:true}).forEach(printjson);
{ "_id" : ObjectId("4c220a42f3924d31102bd856"), "j" : 1 }
{ "_id" : ObjectId("4c220a42f3924d31102bd857"), "j" : 2 }
{ "_id" : ObjectId("4c220a42f3924d31102bd858"), "j" : 3 }
{ "_id" : ObjectId("4c220a42f3924d31102bd859"), "j" : 4 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85a"), "j" : 5 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85b"), "j" : 6 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85c"), "j" : 7 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85d"), "j" : 8 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85e"), "j" : 9 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85f"), "j" : 10 }
{ "_id" : ObjectId("4c220a42f3924d31102bd860"), "j" : 11 }
{ "_id" : ObjectId("4c220a42f3924d31102bd861"), "j" : 12 }
{ "_id" : ObjectId("4c220a42f3924d31102bd862"), "j" : 13 }
{ "_id" : ObjectId("4c220a42f3924d31102bd863"), "j" : 14 }
{ "_id" : ObjectId("4c220a42f3924d31102bd864"), "j" : 15 }
{ "_id" : ObjectId("4c220a42f3924d31102bd865"), "j" : 16 }
{ "_id" : ObjectId("4c220a42f3924d31102bd866"), "j" : 17 }
{ "_id" : ObjectId("4c220a42f3924d31102bd867"), "j" : 18 }
{ "_id" : ObjectId("4c220a42f3924d31102bd868"), "j" : 19 }
{ "_id" : ObjectId("4c220a42f3924d31102bd869"), "j" : 20 }
都是记录学习,thx
先去www.mongodb.org 下载,安装就直接解压到你就好了。
假设windows 32bit机,建立目录D:\mongodb 把压缩包bin目录下的exe全部放到mongodb目录下,然后建立一个data文件夹(D:\mongodb\data) 这个data目录就是用来存放数据的,默认是C盘data\db目录。
bin目录下的
mongod.exe - 数据库服务器.
mongo.exe - 管理员shell
当我们使用自定义的数据存储文件目录D:\mongodb\data时,使用cmd 进入D:\mongdodb目录
输入mongod --dbpath D:\mongodb\data用来启动时指定数据存储目录。
然后运行mongo.exe就行了。
使用help命令就可以查看所有想要得到的命令。
下面进入开发学习阶段:
其实我真的很想就复制粘贴官网的文档,因为真的很容易懂,都懒得翻译写出来了,唉。。。。。
启动之后,将看到
By default the shell connects to database "test" on localhost. You then see:
Sql代码
MongoDB shell version: <whatever>
url: test
connecting to: test
type "help" for help
>
"connecting to: " 显示了正在连接和使用的数据库。想要使用其它库, 键入:
Sql代码
> use mydb
switched to db mydb
用use命令切换数据库并不能立即创建数据库,数据库将在第一次插入数据时延迟创建。可以使用show dbs查看数据库。
Inserting Data into A Collection
下面的shell命令,创建了两个对象j和t,并把它们存入sha0k集合中,K-V,就像map一样,称它集合,不为过吧。
Sql代码
> j = { name : "mongo" };
{"name" : "mongo"}
> t = { x : 3 };
{ "x" : 3 }
> db.sha0k.save(j);
> db.sha0k.save(t);
> db.sha0k.find();
{ "_id" : ObjectId("4f2167ee......"), "name" : "mongo" }
{ "_id" : ObjectId("4f2168f....."), "x" : 3 }
>
对象Id太长了,我没写完,然后再使用show dbs就可以看到mydb已经在数据库列表中了,库创建完成。
有几点是需要注意的(我是真的懒得翻译了,见谅):
We did not predefine the collection. The database creates it automatically on the first insert.(没有预先定义集合)
The documents we store can have different fields - in fact in this example, the documents have no common data elements at all. In practice, one usually stores documents of the same structure within collections.()
Upon being inserted into the database, objects are assigned an object ID (if they do not already have one) in the field _id .
When you run the above example, your ObjectID values will be different.
一次添加多个对象:
Sql代码
> for (var i = 1; i <= 20; i++) db.sha0k.save({x : 4, j : i});
> db.sha0k.find();
{ "_id" : ObjectId("4c2209f9f3924d31102bd84a"), "name" : "mongo" }
{ "_id" : ObjectId("4c2209fef3924d31102bd84b"), "x" : 3 }
{ "_id" : ObjectId("4c220a42f3924d31102bd856"), "x" : 4, "j" : 1 }
{ "_id" : ObjectId("4c220a42f3924d31102bd857"), "x" : 4, "j" : 2 }
{ "_id" : ObjectId("4c220a42f3924d31102bd858"), "x" : 4, "j" : 3 }
{ "_id" : ObjectId("4c220a42f3924d31102bd859"), "x" : 4, "j" : 4 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85a"), "x" : 4, "j" : 5 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85b"), "x" : 4, "j" : 6 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85c"), "x" : 4, "j" : 7 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85d"), "x" : 4, "j" : 8 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85e"), "x" : 4, "j" : 9 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85f"), "x" : 4, "j" : 10 }
{ "_id" : ObjectId("4c220a42f3924d31102bd860"), "x" : 4, "j" : 11 }
{ "_id" : ObjectId("4c220a42f3924d31102bd861"), "x" : 4, "j" : 12 }
{ "_id" : ObjectId("4c220a42f3924d31102bd862"), "x" : 4, "j" : 13 }
{ "_id" : ObjectId("4c220a42f3924d31102bd863"), "x" : 4, "j" : 14 }
{ "_id" : ObjectId("4c220a42f3924d31102bd864"), "x" : 4, "j" : 15 }
{ "_id" : ObjectId("4c220a42f3924d31102bd865"), "x" : 4, "j" : 16 }
{ "_id" : ObjectId("4c220a42f3924d31102bd866"), "x" : 4, "j" : 17 }
{ "_id" : ObjectId("4c220a42f3924d31102bd867"), "x" : 4, "j" : 18 }
has more
我一共插入了20个数据,这里只显示了18个,并在下面提示has more,这是因为shell限制一个迭代的游标只到20,所以要查看下面的,需要使用it命令,iterator。。。。
Sql代码
{ "_id" : ObjectId("4c220a42f3924d31102bd866"), "x" : 4, "j" : 17 }
{ "_id" : ObjectId("4c220a42f3924d31102bd867"), "x" : 4, "j" : 18 }
has more
> it
{ "_id" : ObjectId("4c220a42f3924d31102bd868"), "x" : 4, "j" : 19 }
{ "_id" : ObjectId("4c220a42f3924d31102bd869"), "x" : 4, "j" : 20 }
Accessing Data From a Query
有没有发现刚的办法很麻烦,20多个我就得打次it,40多个打两次,依次类推。。。。
有没有简单的办法呢,那就来看下面的,刚刚提到,mongodb 找到的数据指向都是游标。
Sql代码
> var cursor = db.sha0k.find();
> while (cursor.hasNext()) printjson(cursor.next());
{ "_id" : ObjectId("4c2209f9f3924d31102bd84a"), "name" : "mongo" }
{ "_id" : ObjectId("4c2209fef3924d31102bd84b"), "x" : 3 }
{ "_id" : ObjectId("4c220a42f3924d31102bd856"), "x" : 4, "j" : 1 }
{ "_id" : ObjectId("4c220a42f3924d31102bd857"), "x" : 4, "j" : 2 }
{ "_id" : ObjectId("4c220a42f3924d31102bd858"), "x" : 4, "j" : 3 }
{ "_id" : ObjectId("4c220a42f3924d31102bd859"), "x" : 4, "j" : 4 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85a"), "x" : 4, "j" : 5 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85b"), "x" : 4, "j" : 6 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85c"), "x" : 4, "j" : 7 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85d"), "x" : 4, "j" : 8 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85e"), "x" : 4, "j" : 9 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85f"), "x" : 4, "j" : 10 }
{ "_id" : ObjectId("4c220a42f3924d31102bd860"), "x" : 4, "j" : 11 }
{ "_id" : ObjectId("4c220a42f3924d31102bd861"), "x" : 4, "j" : 12 }
{ "_id" : ObjectId("4c220a42f3924d31102bd862"), "x" : 4, "j" : 13 }
{ "_id" : ObjectId("4c220a42f3924d31102bd863"), "x" : 4, "j" : 14 }
{ "_id" : ObjectId("4c220a42f3924d31102bd864"), "x" : 4, "j" : 15 }
{ "_id" : ObjectId("4c220a42f3924d31102bd865"), "x" : 4, "j" : 16 }
{ "_id" : ObjectId("4c220a42f3924d31102bd866"), "x" : 4, "j" : 17 }
{ "_id" : ObjectId("4c220a42f3924d31102bd867"), "x" : 4, "j" : 18 }
{ "_id" : ObjectId("4c220a42f3924d31102bd868"), "x" : 4, "j" : 19 }
{ "_id" : ObjectId("4c220a42f3924d31102bd869"), "x" : 4, "j" : 20 }
第二行的printjson()函数,可以从环境中理解出来,就是将对象以json数据格式打印出来,上面的例子是游标风格的迭代。
Sql代码
> var cursor = db.sha0k.find();
> printjson(cursor[4]);
{ "_id" : ObjectId("4c220a42f3924d31102bd858"), "x" : 4, "j" : 3 }
When using a cursor this way, note that all values up to the highest accessed (cursor[4] above) are loaded into RAM at the same time. This is inappropriate for large result sets, as you will run out of memory. Cursors should be used as an iterator with any query which returns a large number of elements.(请注意内存溢出)
数组访问方式:
Sql代码
> var arr = db.sha0k.find().toArray();
> arr[5];
{ "_id" : ObjectId("4c220a42f3924d31102bd859"), "x" : 4, "j" : 4 }
Specifying What the Query Returns
SELECT * FROM things WHERE x=4
Sql代码
> db.sha0k.find({x:4}).forEach(printjson);
{ "_id" : ObjectId("4c220a42f3924d31102bd856"), "x" : 4, "j" : 1 }
{ "_id" : ObjectId("4c220a42f3924d31102bd857"), "x" : 4, "j" : 2 }
{ "_id" : ObjectId("4c220a42f3924d31102bd858"), "x" : 4, "j" : 3 }
{ "_id" : ObjectId("4c220a42f3924d31102bd859"), "x" : 4, "j" : 4 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85a"), "x" : 4, "j" : 5 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85b"), "x" : 4, "j" : 6 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85c"), "x" : 4, "j" : 7 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85d"), "x" : 4, "j" : 8 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85e"), "x" : 4, "j" : 9 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85f"), "x" : 4, "j" : 10 }
{ "_id" : ObjectId("4c220a42f3924d31102bd860"), "x" : 4, "j" : 11 }
{ "_id" : ObjectId("4c220a42f3924d31102bd861"), "x" : 4, "j" : 12 }
{ "_id" : ObjectId("4c220a42f3924d31102bd862"), "x" : 4, "j" : 13 }
{ "_id" : ObjectId("4c220a42f3924d31102bd863"), "x" : 4, "j" : 14 }
{ "_id" : ObjectId("4c220a42f3924d31102bd864"), "x" : 4, "j" : 15 }
{ "_id" : ObjectId("4c220a42f3924d31102bd865"), "x" : 4, "j" : 16 }
{ "_id" : ObjectId("4c220a42f3924d31102bd866"), "x" : 4, "j" : 17 }
{ "_id" : ObjectId("4c220a42f3924d31102bd867"), "x" : 4, "j" : 18 }
{ "_id" : ObjectId("4c220a42f3924d31102bd868"), "x" : 4, "j" : 19 }
{ "_id" : ObjectId("4c220a42f3924d31102bd869"), "x" : 4, "j" : 20 }
A query document of the form { a:A, b:B, ... } means "where a==A and b==B and ...".
使用true关键字,只查找j的值结果集
SELECT j FROM things WHERE x=4
Sql代码
> db.sha0k.find({x:4}, {j:true}).forEach(printjson);
{ "_id" : ObjectId("4c220a42f3924d31102bd856"), "j" : 1 }
{ "_id" : ObjectId("4c220a42f3924d31102bd857"), "j" : 2 }
{ "_id" : ObjectId("4c220a42f3924d31102bd858"), "j" : 3 }
{ "_id" : ObjectId("4c220a42f3924d31102bd859"), "j" : 4 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85a"), "j" : 5 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85b"), "j" : 6 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85c"), "j" : 7 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85d"), "j" : 8 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85e"), "j" : 9 }
{ "_id" : ObjectId("4c220a42f3924d31102bd85f"), "j" : 10 }
{ "_id" : ObjectId("4c220a42f3924d31102bd860"), "j" : 11 }
{ "_id" : ObjectId("4c220a42f3924d31102bd861"), "j" : 12 }
{ "_id" : ObjectId("4c220a42f3924d31102bd862"), "j" : 13 }
{ "_id" : ObjectId("4c220a42f3924d31102bd863"), "j" : 14 }
{ "_id" : ObjectId("4c220a42f3924d31102bd864"), "j" : 15 }
{ "_id" : ObjectId("4c220a42f3924d31102bd865"), "j" : 16 }
{ "_id" : ObjectId("4c220a42f3924d31102bd866"), "j" : 17 }
{ "_id" : ObjectId("4c220a42f3924d31102bd867"), "j" : 18 }
{ "_id" : ObjectId("4c220a42f3924d31102bd868"), "j" : 19 }
{ "_id" : ObjectId("4c220a42f3924d31102bd869"), "j" : 20 }
都是记录学习,thx
发表评论
文章已被作者锁定,不允许评论。
相关推荐
在这个“MongoDB基本操作”的主题中,我们将深入探讨如何使用MongoDB进行数据的增删改查以及其它关键操作。 1. **安装与启动MongoDB** - 在不同的操作系统(如Windows、Linux或macOS)上安装MongoDB的步骤略有不同...
总的来说,掌握MongoDB的基础知识对于开发人员来说至关重要,无论是理解数据模型、提高查询效率,还是构建可扩展和可靠的应用程序,MongoDB都提供了强大的工具和支持。通过深入学习和实践,开发者可以充分利用...
对于工作1-3年的运维人员来说,掌握MongoDB的基本操作是提升工作效率的重要一环。下面我们将详细介绍MongoDB数据库的基本操作。 1. 安装与启动MongoDB: 在不同的操作系统上,安装MongoDB的步骤略有不同。通常,你...
本书《mongodb入门》是一本旨在帮助初学者快速学习MongoDB基本用法的入门小书。它适合那些希望在短时间内掌握MongoDB核心概念和操作的读者。作者Karl Seguin是一位拥有丰富技术背景的开发者,其经历跨越多个领域和...
MongoDB 是一种流行的开源NoSQL数据库,以其面向文档的数据模型、高性能、高可用性和高可扩展性而闻名...无论是初学者还是经验丰富的开发者,都需要掌握MongoDB的基础知识和操作技巧,以便在实际项目中充分利用其优势。
现在我们来详细探讨这些知识点。 首先,PHP的MVC架构是一种将业务逻辑、数据和用户界面分离的设计模式。在MVC模式中: - **Model**(模型):负责处理应用程序的数据和业务逻辑,它与数据库交互,获取和存储数据。...
1. **mongodb快速入门-基本操作.doc**:这份文档可能介绍了MongoDB的基本概念,如数据库、集合、文档,以及插入、查询、更新和删除数据的基本命令。 2. **php操作mongodb和mongodb的权限机制.doc**:这个文档应该...
本篇将详细介绍在Linux上安装MongoDB 4.2.21的步骤,以及相关的知识点。 首先,我们需要了解MongoDB的体系结构。MongoDB由以下几个核心组件构成: 1. **Mongod**:这是MongoDB的主要服务进程,负责处理所有数据库...
1. **MongoDB 的基本概念** 2. **F# 语言特性及其在 MongoDB 应用中的优势** 3. **使用 C# 驱动器操作 MongoDB 的方法** 4. **利用 F# 的类型系统改进 MongoDB 中字符串泛滥的问题** #### MongoDB 基本概念 MongoDB...
以上都是MongoDB中进行基本查询的关键知识点,涵盖了查询所有文档、特定条件查询、排除特定字段、选择返回字段、范围查询以及不等于查询等。熟悉这些操作对于有效地管理MongoDB数据库至关重要。在实际应用中,根据...
### MongoDB 数据库基本操作知识点详解 #### 一、MongoDB 安装与配置 ##### 1. 下载 MongoDB - **官网访问**:首先访问 MongoDB 官方网站。 - **选择版本**:根据你的操作系统(如 Windows、Linux 或 macOS)选择...
8. **性能调优**: 除了基本的查询优化,还包括内存管理、磁盘I/O优化、数据模型设计等方面的知识,这些都是确保MongoDB高效运行的重要因素。 9. **安全与认证**: MongoDB的安全特性包括用户认证、访问控制、SSL加密...
首先,让我们深入了解一下MongoDB的基础知识: 1. **数据模型**:MongoDB的数据模型基于JSON(JavaScript Object Notation)格式,文档由键值对组成,键是字符串,值可以是各种类型,包括其他文档、数组等。这种...
这个资料包包含了“mongodb_base.pdf”和“mongodb_advance.pdf”两个文件,分别涵盖了MongoDB的基础知识和高级知识。 首先,让我们从基础开始。MongoDB的基础知识主要包括以下几个方面: 1. 数据模型:MongoDB...
在本文中,我们将深入探讨如何使用Java连接MongoDB,涉及的知识点包括MongoDB Java驱动程序的安装、配置,以及基本的连接和操作数据库的方法。 首先,我们来看“java连接mongodb的jar包”。这个“mongodbjar”通常...
五、MongoDB基本配置 在安装完成后,需要对mongod.conf配置文件进行适当的调整,如设置端口号(默认27017)、日志文件位置、数据存储路径等。 六、MongoDB启动与停止 1. Windows:通过服务管理器启动或停止MongoDB...
在"MongoDB(第1讲 课程介绍与环境设置)"这节课中,我们将首先对MongoDB有一个基本的了解,包括其核心概念、数据模型以及为什么选择MongoDB作为数据库解决方案。MongoDB的数据模型基于文档(文档是JSON格式的键值对)...