您好,登錄后才能下訂單哦!
=== mongodb的基本操作命令=================
DDL操作===========================================================================================
創建架構:use Schema ; 在Schema中創建一個對象即可 db.createCollection("CollectionName")。相當于 create database DBName ;
創建一個集合: db.createCollection("test"); 相當于DBMS中的創建表 create table TableName();
展示架構: show dbs; 相當于mysql 中的 show databases ;
展示集合個數: show collections; show tables
刪除當前架構:use Schema ; db.dropDatabase(); drop database DBName
修改集合名:db.CollectionName.renameCollection("NewName") ; 類似 mysql 中的 alter table oldTable rename to NewTable ;
刪除集合:db.collections.drop(); 類似 mysql 中 drop table tableName;
查看當前所在的DB:db
用戶相關操作================================================================
添加用戶:db.addUser("UserName","PWD")
驗證用戶是否添加成功:db.auth("UserName","PWD")
刪除用戶:db.removUsers("testUser")
權限相關:
http://blog.itpub.net/22664653/viewspace-715617/
DML操作=====================================================================
查詢集合:db.CollectionName.find({}) ; 相當于 select * from TableName
等式條件查詢:db.CollectionName.find({key01:value01}); 相當于 select * from TableName where key01=value01
查詢字段的不同值(去重):db.CollectionName.distinct("Key") 類似 select distinct(key) from table
模糊查詢:db.collections.find({key:/ang/}); select * from tableName where key like '%ang%' ;
:db.collections.find({key:/^ang/}) ; select * from tableName where key like 'ang%' ;
:db.collections.find({key:/g$/}); select * from tableName where key like '%ang'
查詢出指定的列明:db.collections.find({},{key01:false,key02:true,key03:true}); select key02,key03 from tableName
范圍查找:db.collections.find({key01:{$gt:20}}); select * from tableName where key01 > 20
:db.collections.find({key01:{$lge:20}}); select * from tableName where key01 >= 20
:db.collections.find({key01:{$lt:20}}); select * from tableName where key01 < 20
:db.collections.find(){key01:{$lte:20}}; select * from tableName where key01 <= 20
升序排序:db.collections.find({}).sort({key:1}); select * from tableName order by key asc
降序排序:db.collections.find({}).sort({key:-1}); select * from tableName order by key desc
記錄匯總:db.collections.find({}).count({}); select count(*) from tableName
:db.collections.find({}).count({key:false}) select count(key) from tableName
返回指定行數:DBQuery.shellBatchSize=num/db.collections.find({}).limit(num) 類似于 sqlserver set rowcount num
or的操作:db.collections.find({"$or":[{key01:valu01},{key02:value02}]}); select * from tableName where key01=valu01 or key02=value02
in操作:db.test.find({key01:{$in:[valu01,valu02,valu03]}}); select * from tableName where key01 in (valu01,valu02,valu03)
and的操作:db.collections.find({key01:{$gte:24,$lte:28}}); select * from tableName where key01 >=24 and key01 <= 28
:db.collections.find({key01:valu02,key02:valu02}); select * from tableName where key01=valu01 and key02=valu02
不等于操作:db.collections.find({key01:{$ne:valu01}}); select * from tableName where key01 <> valu01
$not的相關操作:db.collections.find({key:{$not:{$in:[valu01,valu02]}}}); select * from tableName where key not in (valu01,valu02)
注意:db.collections.find(key:{$not:valu01}); 沒有這種寫法
正則表達式:后續研究
數組的相關操作
$mod:取模函數
$inc
$maxscan:制定本次查詢中掃描文檔的最大數量
$min:查詢的開始條件,
$max:查詢的結束條件
$showDiskLoc:顯示該條結果在磁盤上的位置。
刪除數據:db.CollectionName.remove({key:value});
修改數據:db.collections.update({key01:valu01}},{"$set":{key02:NewValue}});
添加數
db.collection.update({},{},{upsert:1},{multi:1});
和字段更新相關的操作符:
$set:用來指定一個鍵的值。如果這個鍵不存在,則創建它。
$unset:從文檔中移除指定的鍵。
$inc:"inc"修改器用來增加已有鍵的值,或者在鍵不存在時創建一個鍵。inc就是專門來增加(和減少)數字的。
"$inc"只能用于整數、長整數或雙精度浮點數。要是用在其他類型的數據上就會導致操作失敗。(在當前值的基礎上再加指定的值)
$rename:修改某個鍵的的名字db.collection.update({},{});
upsert:根據第一個條件查詢集合,如果沒有找到相關數據,就將數據插入集合中.
multi:多行操作.
mongodb鍵值更新問題:
http://www.cnblogs.com/egger/archive/2013/05/15/3053617.html
http://www.tuicool.com/articles/FbeArq
http://blog.csdn.net/mcpang/article/details/7752736
據:db.CollectionName.Save({key01:value01,key02:value02})/db.CollectionName.insert({key01:value01,key02:value02})
查看幫助: db.CollectionName.help();
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。