mysql mongodb PostgreSQL运用技能

来源:互联网 发布:linux 解压到根目录 编辑:程序博客网 时间:2024/05/16 18:27

也有一段时间没有更新了。。。现在想想还是有点疲惫了。。。

http://www.cnblogs.com/Joans/p/3729914.html
http://www.cnblogs.com/lori/p/4597341.html

db.runCommand({
    mapreduce: "M_User_Footprints",
    map: function Map() {
       emit(
        { "UserInfoID": this.UserInfoID, "ObjID": this.PlayVideo.ObjID }
        ,
         { count: 1 }
        );
    },
    reduce: function Reduce(key, values) {
        total = 0;//定义一个变量total , values是一个数组
        for (var i in values) {
            total += values[i].count
        }


        return { "count": total };
    },
    finalize: function Finalize(key, reduced) {
        return reduced;
    },
    out: { inline: 1 }
});




mongodb --》 文档型数据库,json串,没什么好特别的


把mongodb 查询结果保存在bin目录下的csv 文件
./mongoexport  --host "IP:port" -u "user_name" -p "pass_word" -d database -c collection--csv -o shopflow.csv  -f user_id -q '{ "linkMillis" : { "$gte" : 1452873601000 , "$lt" : 1453478399000} ,user_id:{"$in":["453786"]}}'
./mongoexport  --host "xxxx:yyyy" -u "xxxx" -p "xxxx" -d database -c collection --type=csv -o shopflow02.csv  -f ssid,user_id,shop_id,createdTime --limit 50000 --skip 50000


db: 查看当前db
show dbs 查看dbs
show collections  查看 collections
db.collection.states  实现索引的代码
数据库查询一定要沿着索引项查询。否则。。。。一般建立索引都在非聚集上。
所以查询比较耗时间。
db.collection.states() 查看索引


查询:
db.shopflow.find({"aa":"bbb"})


只显示item,qty,不显示_id
db.shopflow.find({'openid':{'$in':['4100043800191','4100043787566','4100043820943','4100044071433']},'link_date':{'$lt':'2015-12-01'}},{ item: 1, qty: 1, _id:0 })


db.runCommand({"distinct":"shopflow","key":"apKey","query":{'linkMillis':{'$gte':1453564800000,'$lt':1453651200000}}}).values.length


聚合函数
db.bridgewifisession.aggregate([ { "$match" : { "createdTime" : {"$gte": "2016-01-13 00:00:01", "$lt" : "2016-01-13 23:59:59"}}} , { "$group" : { "_id" :  null  , "total" : { "$sum" : "$sessionTime"}}}]) 




mysql:
关系型数据库,简单,写复杂的sql 麻烦
内连接,自然连接 没有本质区别,我们常用的应该是内连接。自然连接会


为了不遗漏为null 的字段 请分清楚标准后 使用 左连接 来标志。 把不想暴露的列给漏出来。


字段的where 子句 可以使用 正则表达式 格式为:where 字段 referee REGEXP '^0[1-9][0-9]{4}$'

在mysql 里 01234和 1234 是相等的。。。所以, 你懂的。。。会出问题。。。



mysql update可以允许 连接表 然后更新
UPDATE wifi_op_shopwx_user_info tt1 INNER JOIN (
SELECT user_id,money1+money2 total FROM (
SELECT user_id,t1.money money1,t2.money money2,state FROM wifi_op_shopwx_deposit_record t1,wifi_op_shopwx_user_info t2 
WHERE t1.user_id=t2.ID AND DATE(delivery_time)='2016-01-19' AND state=4
) t
)tt2 ON tt1.ID=tt2.user_id
SET tt1.money=tt2.total;




PostgreSQL:自称可以替换Oracle数据库,比较强大的综合中间库,用于中间库和其他系统的对接。
不清楚是关系型还是非关系型。还是两种兼容的综合。


语法同mysql 差不多,但是对数据类型的要求特别严格。
主要是按照特定的数据类型格式要进行强制类型转换,进行查询和标的就可以。
数据库查询一定要沿着索引项查询。否则。。。。一般建立索引都在非聚集上。
所以查询比较耗时间。


GBD,hadoop  就不说了。。







0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 ai保存时未响应怎么办 ai还没保存卡了怎么办 ai卡住了没保存怎么办 屁股沟有硬块红肿怎么办 卧室床选太大了怎么办 画板的笔尖掉了怎么办 宜家水壶盖子有水怎么办 背滤鱼缸除油膜怎么办 书多了没地方放怎么办 学生在教室内丢手机怎么办 新车尾箱坏了怎么办 放书的箱子烂了怎么办 车钥匙锁后备箱里怎么办 布的收纳箱有味怎么办 车漆清漆层掉了怎么办 副驾驶储物箱卡子断了怎么办 玛莎拉蒂车门打不开怎么办 新买的水杯漏水怎么办 泰迪小狗掉毛怎么办 手机jlc调用接口状态异常怎么办 进门和厕所对着怎么办 p过的照片有竖条怎么办 当照片p出竖条纹怎么办 月子里落下脚心怕风怕凉怎么办 鞋胶把手粘住了怎么办 凉鞋魔术贴长了怎么办 新买的狗一直叫怎么办 刚买的幼犬老叫怎么办 狗狗什么都不吃怎么办 新买的吊扇风小怎么办 夜市卖果汁没电怎么办 榻榻米太长2米45怎么办 木质桌子黏黏的怎么办 白色塑料桌子染色了怎么办 3dmax模型变透明了怎么办 刚养的兔子不吃怎么办 熊猫兔不吃下喝怎么办 熊猫兔感冒了一直打喷嚏怎么办 兔子后腿骨断了怎么办 兔子的腿肿了怎么办 仓鼠喝了牛奶该怎么办