1. 程式人生 > >Mongodb基礎命令

Mongodb基礎命令

1.下載mongodb3.2.4 x86,配置環境變數。

2.設定資料儲存的目錄,並開啟服務

mongod -dbpath="目錄"

3.基礎命令

3.1 連線Mongodb:mongo localhost:27017(預設佔用27017埠,沒有使用者名稱密碼)

3.2 資料庫

show dbs 顯示所有的資料庫,預設只有local 和 test資料庫。 

use dbname 表示使用哪個資料庫

3.3 集合:(和關係型資料庫的表類似)  *刪除集合:db.person.drop();

建立集合(顯式建立) db.createCollection("person")

建立集合並插入一條資料(隱式建立)

 db.person.insert({name:"person_name",age:10})

建立集合並批量插入資料(通過js格式的for迴圈)

for(var i=1; i<=100000; i++){
... db.person.insert({name:"person_name"+i,age:i*10})
... }

建立集合時指定是否固定,固定多大,固定多少條資料

db.createCollection("person",{capped:true,size:1000,max:100});

capped 代表集合是否固定,只有為true後面的引數才有意義,否則後面引數即使指定了也無效。

size 代表最多可以佔用多大空間單位是kb,max 代表最多可以儲存多少條資料,超出則從第一條開始刪除。

檢視集合所屬資料庫 db.person

檢視所有資料(cmd只顯示20條)  db.person.find()

統計所有資料計數 db.person.find().count()

刪除所有資料 db.person.remove()

檢視第一條資料 db.person.findOne()

檢視資料帶條件

[age=20的資料所有列] db.person.find({age:20});

[age=20的資料name列] db.person.find({age:20},{name:1});

[age<30的資料] db.person.find({age:{$lt:30}});

[age<=30的資料] db.person.find({age:{$lte:30}});

[age!=30的資料] db.person.find({age:{$ne:30}});

[name="person_name8" 而且 age=80的資料] db.person.find({name:"person_name8",age:80});

[name="person_name6" 或者 age=20 或者 age=80的資料] db.person.find({$or:[{age:20},{age:80},{name:"person_name6"}]});

$nor用法和$or一樣,代表和$or相反的條目

[包含或者不包含某列的資料] db.person.find(age:{$exists:1}); (包含)  db.person.find(age:{$exists:0}); (不包含)

刪除資料帶條件

[刪除age=30的資料]

db.person.remove({age:30});

分頁

[第6條開始(包含第6條),查8條資料] db.person.find().skip(5).limit(8);

排序

[先降序排列在分頁(有sort的會先執行sort)] db.person.find().skip(5).limit(8).sort({age:-1});

4.查詢陣列

4.1.先組裝3條資料

> db.array.insert({name:"a",post:[1,2,3,4,5,6,7,8,9]});
WriteResult({ "nInserted" : 1 })
> db.array.insert({name:"a",post:[2,4,6,8]});
WriteResult({ "nInserted" : 1 })
> db.array.insert({name:"a",post:[1,3,5,7,9]});
WriteResult({ "nInserted" : 1 })
> db.array.find();
{ "_id" : ObjectId("58551fb48f32b428cbbc85d6"), "name" : "a", "post" : [ 1, 2, 3, 4, 5, 6, 7, 8, 9 ]
{ "_id" : ObjectId("58551fc68f32b428cbbc85d7"), "name" : "a", "post" : [ 2, 4, 6, 8 ] }
{ "_id" : ObjectId("58551fd18f32b428cbbc85d8"), "name" : "a", "post" : [ 1, 3, 5, 7, 9 ] }
4.2.全部包含才返回
> db.array.find({post:{$all:[1,2,3]}});
{ "_id" : ObjectId("58551fb48f32b428cbbc85d6"), "name" : "a", "post" : [ 1, 2, 3, 4, 5, 6, 7, 8, 9 ]

可以看到只返回一條資料

4.3.只要包含條件中任意一條就返回

> db.array.find({post:{$in:[1,2,3]}});
{ "_id" : ObjectId("58551fb48f32b428cbbc85d6"), "name" : "a", "post" : [ 1, 2, 3, 4, 5, 6, 7, 8, 9 ]
{ "_id" : ObjectId("58551fc68f32b428cbbc85d7"), "name" : "a", "post" : [ 2, 4, 6, 8 ] }
{ "_id" : ObjectId("58551fd18f32b428cbbc85d8"), "name" : "a", "post" : [ 1, 3, 5, 7, 9 ] }

4.4.只要包含條件中任意一條就不返回(與$in相反)

> db.array.find({post:{$nin:[1,2,3]}});

5.遊標

> var cursor = db.person.find();
> cursor.next();
{
        "_id" : ObjectId("585511868f32b428cbbaff36"),
        "name" : "person_name1",
        "age" : 10
}
> cursor.next();
{
        "_id" : ObjectId("585511868f32b428cbbaff37"),
        "name" : "person_name2",
        "age" : 20
}
> cursor.next();
{
        "_id" : ObjectId("585511868f32b428cbbaff39"),
        "name" : "person_name4",
        "age" : 40
}
>

部分命令示例:

C:\Users\Administrator>mongo localhost:27017
2016-12-17T18:14:34.973+0800 I CONTROL  [main] Hotfix KB2731284 or later update
is not installed, will zero-out data files
MongoDB shell version: 3.2.4
connecting to: localhost:27017/test
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
        http://docs.mongodb.org/
Questions? Try the support group
        http://groups.google.com/group/mongodb-user
> show dbs
local  0.000GB
> show dbs;
local  0.000GB
> db
test
> db.createCollection("person")
{ "ok" : 1 }
> db.c1.insert({name:"haiou",desc:"baji"})
WriteResult({ "nInserted" : 1 })
> db
test
> show collections
c1
person
> for(var i=1; i<=100000; i++){
... db.person.insert({name:"person_name"+i,age:i*10})
... }
WriteResult({ "nInserted" : 1 })
>
>
>
>
> show collections.person
2016-12-17T18:24:41.533+0800 E QUERY    [thread1] Error: don't know how to show
[collections.person] :
[email protected]/mongo/shell/utils.js:803:11
[email protected]/mongo/shell/utils.js:594:15
@(shellhelp2):1:1

> db.person
test.person
> db.person.find()
{ "_id" : ObjectId("585511868f32b428cbbaff36"), "name" : "person_name1", "age" :
 10 }
{ "_id" : ObjectId("585511868f32b428cbbaff37"), "name" : "person_name2", "age" :
 20 }
{ "_id" : ObjectId("585511868f32b428cbbaff38"), "name" : "person_name3", "age" :
 30 }
{ "_id" : ObjectId("585511868f32b428cbbaff39"), "name" : "person_name4", "age" :
 40 }
{ "_id" : ObjectId("585511868f32b428cbbaff3a"), "name" : "person_name5", "age" :
 50 }
{ "_id" : ObjectId("585511868f32b428cbbaff3b"), "name" : "person_name6", "age" :
 60 }
{ "_id" : ObjectId("585511868f32b428cbbaff3c"), "name" : "person_name7", "age" :
 70 }
{ "_id" : ObjectId("585511868f32b428cbbaff3d"), "name" : "person_name8", "age" :
 80 }
{ "_id" : ObjectId("585511868f32b428cbbaff3e"), "name" : "person_name9", "age" :
 90 }
{ "_id" : ObjectId("585511868f32b428cbbaff3f"), "name" : "person_name10", "age"
: 100 }
{ "_id" : ObjectId("585511868f32b428cbbaff40"), "name" : "person_name11", "age"
: 110 }
{ "_id" : ObjectId("585511868f32b428cbbaff41"), "name" : "person_name12", "age"
: 120 }
{ "_id" : ObjectId("585511868f32b428cbbaff42"), "name" : "person_name13", "age"
: 130 }
{ "_id" : ObjectId("585511868f32b428cbbaff43"), "name" : "person_name14", "age"
: 140 }
{ "_id" : ObjectId("585511868f32b428cbbaff44"), "name" : "person_name15", "age"
: 150 }
{ "_id" : ObjectId("585511868f32b428cbbaff45"), "name" : "person_name16", "age"
: 160 }
{ "_id" : ObjectId("585511868f32b428cbbaff46"), "name" : "person_name17", "age"
: 170 }
{ "_id" : ObjectId("585511868f32b428cbbaff47"), "name" : "person_name18", "age"
: 180 }
{ "_id" : ObjectId("585511868f32b428cbbaff48"), "name" : "person_name19", "age"
: 190 }
{ "_id" : ObjectId("585511868f32b428cbbaff49"), "name" : "person_name20", "age"
: 200 }
Type "it" for more
> db.person.find().count()
100000
> db.person.findOne();
{
        "_id" : ObjectId("585511868f32b428cbbaff36"),
        "name" : "person_name1",
        "age" : 10
}
> db.person.find({age:20});
{ "_id" : ObjectId("585511868f32b428cbbaff37"), "name" : "person_name2", "age" :
 20 }
> db.person.find({age:20},{name:1})
{ "_id" : ObjectId("585511868f32b428cbbaff37"), "name" : "person_name2" }
> db.person.remove({age:30});db.person.count();
99999
> db.person.find({age:{$lte:3}});
> db.person.find({age:{$lte:30}});
{ "_id" : ObjectId("585511868f32b428cbbaff36"), "name" : "person_name1", "age" :
 10 }
{ "_id" : ObjectId("585511868f32b428cbbaff37"), "name" : "person_name2", "age" :
 20 }
> db.person.find().skip(5).limit(8);
{ "_id" : ObjectId("585511868f32b428cbbaff3c"), "name" : "person_name7", "age" : 70 }
{ "_id" : ObjectId("585511868f32b428cbbaff3d"), "name" : "person_name8", "age" : 80 }
{ "_id" : ObjectId("585511868f32b428cbbaff3e"), "name" : "person_name9", "age" : 90 }
{ "_id" : ObjectId("585511868f32b428cbbaff3f"), "name" : "person_name10", "age" : 100 }
{ "_id" : ObjectId("585511868f32b428cbbaff40"), "name" : "person_name11", "age" : 110 }
{ "_id" : ObjectId("585511868f32b428cbbaff41"), "name" : "person_name12", "age" : 120 }
{ "_id" : ObjectId("585511868f32b428cbbaff42"), "name" : "person_name13", "age" : 130 }
{ "_id" : ObjectId("585511868f32b428cbbaff43"), "name" : "person_name14", "age" : 140 }
> db.person.find().skip(5).limit(8).sort({age:-1});
{ "_id" : ObjectId("5855121c8f32b428cbbc85d0"), "name" : "person_name99995", "age" : 999950 }
{ "_id" : ObjectId("5855121c8f32b428cbbc85cf"), "name" : "person_name99994", "age" : 999940 }
{ "_id" : ObjectId("5855121c8f32b428cbbc85ce"), "name" : "person_name99993", "age" : 999930 }
{ "_id" : ObjectId("5855121c8f32b428cbbc85cd"), "name" : "person_name99992", "age" : 999920 }
{ "_id" : ObjectId("5855121c8f32b428cbbc85cc"), "name" : "person_name99991", "age" : 999910 }
{ "_id" : ObjectId("5855121c8f32b428cbbc85cb"), "name" : "person_name99990", "age" : 999900 }
{ "_id" : ObjectId("5855121c8f32b428cbbc85ca"), "name" : "person_name99989", "age" : 999890 }
{ "_id" : ObjectId("5855121c8f32b428cbbc85c9"), "name" : "person_name99988", "age" : 999880 }
>

相關推薦

MongoDB基礎命令雜記

MongoDB 安裝 基礎命令一、MongoDB安裝使用 1、安裝啟動MongoDB 1.1 下載安裝 官網: https://www.mongodb.com/ rpm下載地址: http://mirrors.aliyun.com/mongodb/yum/redhat/7/mongodb-org/ [ro

學習筆記之MongoDB基礎命令

1.選擇資料庫 命令: use DATEBASE_NAME(資料庫名) 作用:若沒有該資料庫則直接建立,若有則切換資料庫 執行效果如下: use runoob switched to db runoob db runoob

Mongodb基礎命令

1.下載mongodb3.2.4 x86,配置環境變數。 2.設定資料儲存的目錄,並開啟服務 mongod -dbpath="目錄" 3.基礎命令 3.1 連線Mongodb:mongo localhost:27017(預設佔用27017埠,沒有使用者名稱密碼) 3.2

MongoDB基礎知識與常用命令

SQL術語/概念 MongoDB術語/概念 解釋/說明 database database 資料庫 table collection 資料庫表/集合 row docu

mongodb基礎及常用命令

概念 文件 文件是mongodb中的最核心的概念,是其核心單元,我們可以將文件類比成關係型資料庫中的每一行資料。多個鍵及其關聯的值有序的放置在一起就是文件。 例: json {“name":"

MongoDB基礎篇:MongoDB Shell命令大全

要想能熟練操作MongoDB,首先先要熟練使用 MongoDB Shell, 再次要熟練使用驅動 mongodb-java-driver, 最後是spring-data-mongodb的使用 MongoDB 簡介: MongoDB採用Bson格式儲存

LINUX基礎命令

特殊符號 change linux touch 程序 1、mkdir 創建目錄 make directory2、cd 目錄切換 change directory3、touch 創建文件4、pwd 查看當前路徑5、vi 編輯普通文件;6、vim 編程序7、tab 命令路徑補全功能8、

mysql 庫基礎命令匯總

mysql1 登錄mysql數據庫[[email protected]/* */ ~]# mysql -uroot -pEnter password: Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL conne

2017-05-06隨記:基礎命令和符號

基礎命令2017-05-06基礎命令:1.mkdir 創建目錄 make directory -p 遞歸創建2.ls 顯示目錄中的內容,列表 list -l (小寫字母L) 顯示詳細的信息 3.pwd 顯示當前你所在的位置

linux學習之二:日常的基礎命令收集

幫助文檔 gedit 查看 日期 取整 style 位置 某月 linux 1、 ls 2、pwd  顯示當前目錄所在位置 3、date  日期時間 4、cal  日歷   默認顯示當前該月   cal 2012 :查看2012年的日歷   cal 月 年 : 查看某年某月

mysql數據庫基礎命令匯總2

mysql14 在test表中字段name前插入age字段 類型tinyint(2)mysql> create table test (id int(4) not null, name varchar(16) not null);Query OK, 0 rows affected (0.36 sec)m

Linux基礎命令之grep

模式匹配 lin 大小寫 表達式 ignore col -c 分組 nbsp grep : 根據pattern(模式)搜索文本,並將符合模式的文本行顯示出來,並不會修改原文件。 用法: grep [options] ‘ pattern ‘ /file #

華為三層交換機綁定IP和MAC地址基礎命令

流程 bsp tab mac地址 基本 tegra 端口 root權限 如果 //本文檔主要介紹交換機地址綁定基本流程和用到的命令; //不記得命令可以輸入?查看,或在一段命令中用‘TAB’鍵進行命令補全:如”user-b s mac-a ‘TAB‘ //此處,將自動補全命

linux基礎命令

iptable bit top 類型 基礎命令 list 共享庫 轉換 start 1 ① 命令行切換圖形界面:startx & ② 顯示文字轉換命令行輸入:localectl list-locales             localectl set-loca

MongoDB基礎知識(一)

解決方案 互聯網 我們很好 數據庫 基礎知識 互聯網行業的發展非常的迅速,數據存儲以及架構優化方面也有很多不同的解決方案,例如關系型數據庫、非關系型數據庫、數據倉庫技術等。更多數據庫類產品的出現,為我們很好的解決了數據存儲的問題,例如Redis緩存,MySQL關系型數據庫,MongoDB

Linux入門基礎命令(一)

linux運維Linux入門基礎命令內部命令常駐內存:由shell自帶的,而且通過某命令形式提供help:獲取所有內部命令列表(下圖只截取了一部分)enable COMMAND:執行此命令可以啟用COMMAND命令enable -n COMMAND:執行此命令可以禁用COMMAND命令enable -n:查看

Mongodb基礎實踐(二)

數據庫查詢 表達式 where 技術 文章 在前面的文章裏面主要介紹了MongoDB的文檔,集合,數據庫等操作和對文檔的增、刪、改相關知識,接下來會總結一點有關查詢的相關知識。 在MySQL中,我們知道數據查詢是優化的主要內容,讀寫分離等技術都是可以用來處理數據庫查詢優化的,足以見數

liunx 基礎命令

linux 基礎命令1. 顯示當前目錄所有的文件和目錄信息 > ls //list > ls XX目錄 //查看指定目錄下邊的文件信息2. 顯示當前文件目錄位置 > pwd3. 目錄之間切換 > cd 目錄名字 > cd .. 切

vim基礎命令

所在 搜索 文件 刪除 光標 範圍 退出 字符替換 高亮 vim基礎命令 不定時更新 插入操作 i 普通插入a 從下一個字符處插入o 從下一行插入 I 在本行首插入A 在本行尾插入O 光標處插入新行 刪除操作 x 刪除光標所在字符nx 刪除後面n個字符 dd 用來刪除

MySQL必會基礎命令

mysql 基礎命令1.1 登陸數據庫。mysql -uroot -poldboy123 -S /data/3306/mysql.sock1.2 查看數據庫版本及當前登錄用戶是什麽。select version(); select user();1.3 創建GBK字符集的數據庫oldboy,並查看已建庫的完整