1. 程式人生 > >MongoDB語法與SQL語法比較

MongoDB語法與SQL語法比較

MongoDB語法 MySql語法
db.test.find({‘ID’:10}).count() select count(*) from test where ID=10
db.test.find({‘name’:‘foobar’}) select * from test where name=‘foobar’
db.test.find() select *from test
db.test.find().skip(10).limit(20) select * from test limit 10,20
db.test.find({‘ID’:{$in:[18,25,36]}}) select * from test where ID in (18,25,36)
db.test.find().sort({‘ID’:-1}) select * from test order by IDdesc
db.test.distinct(‘name’,{‘ID’:{$lt:20}}) select distinct(name) from testwhere ID<20
db.test.find(‘this.ID<20’,{name:1}) select name from test whereID<20
db.test.insert({‘name’:‘foobar’,‘age’:25} insertinto test (‘name’,‘age’) values(‘foobar’,25)
db.test.remove({‘age’:24}) delete test where age=24
db.test.remove({‘age’:{$lt:24}}) delete test where age<24
db.test.remove({‘age’:{$lte:24}}) delete test where age<=24
db.test.remove({‘age’:{$gt:24}}) delete test where age>24
db.test.remove({‘age’:{$gte:24}}) delete test where age>=24
db.test.remove({‘age’:{$ne:24}}) delete test where age!=24
db.test.update({‘name’:‘foobar’},{$set:{‘age’:36}}) update test set age=36 where name=‘foobar’
db.test.update({‘name’:‘foobar’},{$inc:{‘age’:3}}) update test set age=age+3 where name=‘foobar’
模糊查詢:$regex

db.test.find({“name”:{$regex:“aaa”}})

分組個數過濾

db.getCollection(‘id_mapper’).aggregate([{KaTeX parse error: Expected '}', got 'EOF' at end of input: group:{ _id :"contract_id",count:{KaTeX parse error: Expected 'EOF', got '}' at position 6: sum:1}̲}},{match:{count:{$gt:1}}}])

判斷是否為空

db.getCollection(‘id_mapper’).find({“sinocardid”:{$in:[null]}})