MongoDB对应的SQL语句

2017/04/06 01:34
阅读数 24

MongoDB对应SQL语句

-------------------MongoDB对应SQL语句-------------------

1、Create and Alter

    1、

    sql:

        create table users(

            id mediuminty not null auto_increment,

            user_id varchar(30),

            age Number,

            status char(1),

            primary key (id)

        )

    MongoDB:

        db.users.insert({

            user_id:"xiaohao",

            age:55,

            status:"A"

        })

 

    2、

    sql:

        alter table users add join_date datetime

    MongoDB:

        db.users.update(

            {},

            {$set:{join_date: new Date()}},

            {multi: true}

        )

    3、

    sql:

        alter table users drop column join_date

    MongoDB:

        db.users update(

            {},

            {$unset:{join_date:""}},

            {multi:true}

        )

    4、

    sql:

        create index idx_user_id_asc on user(user_id)

    mongoDB:

        db.users.createIndex({user_id:1})

    5、

    sql:

        create index idx_user_id_desc on user(user_id,age desc)

    mongoDB:

        db.users.createIndex({user_id:1,age:-1})

    6、

    sql:

        drop table users

    mongoDB:

        db.users.drop()

 

2、Insert

    1、

    sql:

        insert into users(user_id,age,status) values ("001",18,true)

    mongoDB:

        db.users.insert(

            {user_id:"001",age:18,status:true}

        )

 

3、Select

    1、

    sql:

        select * from users

    mongoDB:

        db.users.find()

    2、

    sql:

        select id,user_id,status from users

    mongoDB:

        db.users.find({"user_id":1,"status":1})

    3、

    sql:

        select user_id,status from users

    mongoDB:

        db.users.find(

            {},

            {"user_id":1,"status":1,"_id":0}

        )

    4、

    sql:

        select * from users where status="A"

    mongoDB:

        db.users.find(

            {"status":"A"}

        )

    5、

    sql:

        select user_id,status from users where status="A"

    mongoDB:

        db.users.find(

            {"status":"A"},

            {"user_id":1,"status":1,"_id":0}

        )

    6、

    sql:

        select * from users where status!="A"

    mongoDB:

        db.users.find(

            {"status":{$ne:"A"}}

        )

    7、

    sql:

        select * from users where status="A" and age=18

    mongoDB:

        db.users.find(

            {

                "status":"A",

                "age":18

            }

        )

    8、

    sql:

        select * from users where status="A" or age="50"

    mongoDB:

        db.users.find(

            {$or:[{"status":"A"},

                    {"age":18} ] }

        )

    9、

    sql:

        select * from users where age>10

    mongoDB:

        db.users.find(

            {"age":{$gt:10}}

        )

    10、

    sql:

        select * from users where age<25

    mongoDB:

        db.users.find(

            {"age":{$lt:25}}

        )

    11、

    sql:

        select * from users where age<25 and age>=8

    mongoDB:

        db.users.find(

            {"age":{$gte:8,$lt:25}}

        )

 

    12、

    sql:

        select * from users where user_name like "%gh%"

    mongoDB:

        db.users.find(

            {"user_name":/gh/}

        )

    13、

    sql:

        select * from users where user_name like "wang%"

    mongoDB:

        db.users.find(

            {"user_name":/^wang/}

        )

    14、

    sql:

        select * from users where status="A" order by user_id asc

    mongoDB:

        db.users.find(

            {"status":"A"}

        ).sort(

            {"user_id":1}

        )

    15、

    sql:

        select * from users where status="A" order by user_id desc

    mongoDB:

        db.users.find(

            {"status":"A"}   

        ).sort(

            {"user_id":-1}

        )

    16、

    sql:

        select count(*) from users

    mongoDB:

        db.users.find().count()

    17、

    sql:

        select count(user_id) from users

    mongoDB:

        db.users.find(

            {"user_id":{$exists:true}}

        ).count()

    18、

    sql:

        select count(*) from users where age>20

    mongoDB:

        db.users.find(

            {"age":{$gt:20}}

        ).count()

    19、

    sql:

        select distinct(status) from users

    mongoDB:

        db.users.distinct("user_id")#去重获取的对应的数据信息

    20、

    sql:

        select * from users limit 1

    mongoDB:

        db.users.find().limit(1)

    21、

    sql:

        select * from users limit 5 skip 10

    mongoDB:

        db.users.find().limit(5).skip(10)

    22、

    sql:

        explain select * from users where status="A"

    mongoDB:

        db.users.find(

            {"status":"A"}

        ).explain()

 

4、Delete Records

    1、

    sql:

        delete from users where status = "D"

    mongoDB:

        db.users.remove(

            {"status":"D"}

        )

    2、

    sql:

        delete from users

    mongoDB:

        db.users.remove({})

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部