mongodb与mysql命令详细对比

mongodb与mysql命令详细对比

2023年7月26日发(作者:)

mongodb与mysql命令详细对⽐传统的关系数据库⼀般由数据库(database)、表(table)、记录(record)三个层次概念组成,。MongoDB对于关系型数据库⾥的表,但是集合中没有列、⾏和关系概念,这体现了模式⾃由的特点。mysqldmysqlmysqldumpmysql

mysqldumpsourcegrant * privileges on *.* to …Database()r()()show dbsShow Collection("mycoll", {capped:true,服务器守护进程客户端⼯具逻辑备份⼯具逻辑恢复⼯具修复数据库数据导出⼯具数据导⼊⼯具新建⽤户并权限show databasesShow tablesShow slave statusCreate table users(a int, b int)显⽰库列表显⽰表列表查询主从状态创建表size:100000}) 另:可隐式创建表。Create INDEX idxname ON users(name)Index({name:1})Create INDEX idxname ON users(name,ts DESC)Index({name:1,ts:-1})Insert into users values(1, 1)({a:1, b:1})Select a, b from ({},{a:1, b:1})Select * from ()Select * from users where age=({age:33})Select a, b from users where age=({age:33},{a:1, b:1})select * from users where age<({'age':{$lt:33}})select * from users where age>33 and age<=({'age':{$gt:33,$lte:40}})select * from users where a=1 and b='q'({a:1,b:'q'})select * from users where a=1 or b=( { $or : [ { a : 1 } , { b : 2 } ] } )select * from users limit e()select * from users where name like "%Joe%"({name:/Joe/})select * from users where name like "Joe%"({name:/^Joe/})select count(1) from ()select count(1) from users where age>({age: {'$gt': 30}}).count()select DISTINCT last_name from ct('last_name')select * from users ORDER BY ().sort({name:-1})select * from users ORDER BY name ().sort({name:-1})EXPLAIN select * from users where z=({z:3}).explain()update users set a=1 where b='q'({b:'q'}, {$set:{a:1}}, false, true)update users set a=a+2 where b='q'({b:'q'}, {$inc:{a:2}}, false, true)delete from users where z="abc"({z:'abc'}) db. ()drop database IF EXISTS test;use tabase()()r(‘test', 'test')创建索引创建索引插⼊记录查询表查询表条件查询条件查询条件查询条件查询条件查询条件查询条件查询模糊查询模糊查询获取表记录数获取表记录数去掉重复值排序排序获取存储路径更新记录更新记录删除记录删除所有的记录删除数据库drop table IF EXISTS test;

删除表/collection添加⽤户readOnly-->false添加⽤户readOnly-->true更改密码删除⽤户 r(‘test', 'test', true)

r("test","test222")({user:"test"})({user:"test"})删除⽤户

或者User('test')use admin超级⽤户(‘test', ‘test')⽤户授权()查看⽤户列表show users查看所有⽤户ollectionStats()查看各collection的状态eplicationInfo()查看主从复制状态show profile查看tabase('mail_addr','mail_addr_tmp')拷贝数据库ze()查看collection数据的⼤⼩db. ndexSize()查询索引的⼤⼩MongoDB的好处挺多的,⽐如多列索引,查询时可以⽤⼀些统计函数,⽀持多条件查询,但是⽬前多表查询是不⽀持的,可以想办法通过数据冗余来解决多表查询的问题。MongoDB对数据的操作很丰富,下⾯做⼀些举例说明,内容⼤部分来⾃官⽅⽂档,另外有部分为⾃⼰理解。查询colls所有数据() //select * from colls

通过指定条件查询({‘last_name': ‘Smith'});//select * from colls where last_name='Smith'

指定多条件查询( { x : 3, y : “foo” } );//select * from colls where x=3 and y='foo'指定条件范围查询({j: {$ne: 3}, k: {$gt: 10} });//select * from colls where j!=3 and k>10查询不包括某内容({}, {a:0});//查询除a为0外的所有数据⽀持<, <=, >, >=查询,需⽤符号替代分别为$lt,$lte,$gt,$({ “field” : { $gt: value } } );

({ “field” : { $lt: value } } );

({ “field” : { $gte: value } } );({ “field” : { $lte: value } } );也可对某⼀字段做范围查询({ “field” : { $gt: value1, $lt: value2 } } );不等于查询⽤字符$( { x : { $ne : 3 } } );in查询⽤字符$( { “field” : { $in : array } } );({j:{$in: [2,4,6]}});not in查询⽤字符$({j:{$nin: [2,4,6]}});取模查询⽤字符$( { a : { $mod : [ 10 , 1 ] } } )// where a % 10 == 1$all查询( { a: { $all: [ 2, 3 ] } } );//指定a满⾜数组中任意值时$size查询( { a : { $size: 1 } } );//对对象的数量查询,此查询查询a的⼦对象数⽬为1的记录$exists查询( { a : { $exists : true } } ); // 存在a对象的数据( { a : { $exists : false } } ); // 不存在a对象的数据$type查询$type值为bson/数 据的类型值( { a : { $type : 2 } } ); // 匹配a为string类型数据( { a : { $type : 16 } } ); // 匹配a为int类型数据使⽤正则表达式匹配( { name : /acme.*corp/i } );//类似于SQL中like内嵌对象查询( { “” : “joe” } );1.3.3版本及更⾼版本包含$not查询( { name : { $not : /acme.*corp/i } } );( { a : { $not : { $mod : [ 10 , 1 ] } } } );sort()排序().sort( { ts : -1 } );//1为升序2为降序limit()对限制查询数据返回个数().limit(10)skip()跳过某些数据().skip(10)snapshot()快照保证没有重复数据返回或对象丢失count()统计查询对象个数({‘' : ‘CA'}).count();//效率较⾼({‘' : ‘CA'}).toArray().length;//效率很低group()对查询结果分组和SQL中group by函数类似distinct()返回不重复值

发布者:admin,转转请注明出处:http://www.yc00.com/web/1690367580a339079.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信