sql to mongo shell to c++

1 篇文章 0 订阅
1 篇文章 0 订阅

SQL:
INSERT INTO USERS VALUES( 1, 1);
SELECT a,b FROM users;
SELECT * FROM users;
SELECT * FROM users WHERE age=33;
SELECT * FROM users WHERE age=33 ORDER BY name;
SELECT * FROM users WHERE age>33 AND age<=40 CREATE INDEX myindexname ON users(name);
SELECT * FROM users LIMIT 10 SKIP 20;
SELECT * FROM users LIMIT 1
SELECT DISTINCT last_name FROM users WHERE x=1 SELECT COUNT(*) FROM users where AGE > 30;
UPDATE users SET a=a+2 WHERE b=‘q’;
DELETE FROM users WHERE z=“abc”;

mongo Shell
db.users.insert( { a: 1, b: 1 } )
db.users.find( {},
{a: 1, b: 1 }
)
db.users.find()
db.users.find( { age: 33 } )
db.users.find( { age: 33 } ).sort( { name: 1 } )
db.users.find( { ‘age’: { $gt:33, $lte:40 } } )
db.users.ensureIndex( {name: 1 } )
db.users.find().limit(10).skip(20)
db.users.findOne()
db.users.distinct( ‘last_name’, {x: 1} )
db.users.find( { age: { $gt: 30 } } ).count()
db.users.update( { b: ‘q’ },
{ $inc: { a:2 } },
false, true)
db.users.remove( { z: ‘abc’ } )

C++ Driver
// GENOID is optional. if not done by client,
// server will add an _id

c.insert(“mydb.users”,
BSON(GENOID<<“a”<<1<<“b”<<1));
// then:
string err = c.getLastError();

auto_ptr cursor =
c.query(“mydb.users”, Query(),
0, 0, BSON(“a”<<1<<“b”<<1));
auto_ptr cursor =
c.query(“mydb.users”, Query());

auto_ptr cursor =
c.query(“mydb.users”, QUERY(“age”<<33))
// or:
auto_ptr cursor =
c.query(“mydb.users”, BSON(“age”<<33))

auto_ptr cursor =
c.query(“mydb.users”,
QUERY(“age”<<33).sort(“name”));

auto_ptr cursor =
c.query(“mydb.users”,
QUERY(“age”<<GT<<33<<LTE<<40));

c.ensureIndex(“mydb.users”, BSON(“name”<<1));

auto_ptr cursor =
c.query(“mydb.users”, Query(),
10, 20);

bo obj = c.findOne(“mydb.users”, Query());

// no helper for distinct yet in c++ driver,
// so send command manually
bo cmdResult;
bool ok = c.runCommand(
“mydb”,
BSON(“distinct” << “users”
<< “key” << “last_name”
<< “query” << BSON(“x”<<1)),
cmdResult);
list results;
cmdResult[“values”].Obj().Vals(results);

unsigned long long n =
c.count(“mydb.users”, BSON(“age”<<GT<<30));

c.update(“mydb.users”, QUERY(“b”<<“q”),
BSON("$inc"<<BSON(“a”<<2)), false, true);
// then optionally:
string err = c.getLastError();
bool ok = err.empty();

c.remove(“mydb.users”, QUERY(“z”<<“abc”));
// then optionally:
string err = c.getLastError();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值