Mongo修改数据类型

来源:互联网 发布:淘宝怎么筛选发货地 编辑:程序博客网 时间:2024/05/16 00:59

引言

本文主要讲解Mongodb的类型转换。包括:string转double, string转int, string转Date。

0. 出现类型不一致的原因

ES导入数据到Mongo后,会出现类型统一改为String的问题。
传统关系型数据库,在设计表处,右键就可以完成修改表类型。
但是非关系型数据库,没有这种实现。只有通过命令行操作实现。
验证表明,可以通过如下的接口进行修改。

1、Mongodb类型转换接口

//string转为double类型db.law.find().forEach( function (x) {  x.state = parseInt(x.state);  db.law.save(x);});//string转为int类型db.law.find().forEach( function (x) {  x.ise= NumberInt (x.ise);  db.law.save(x);});//string转化为date类型db.law.find().forEach( function (x) { x.eift = new ISODate(x.eift);  db.law.save(x);});

2、类型转换一键脚本实现

[root@Node-C6 mongo_process]# cat ./mongo_uopdate.sh#!/bin/shmongo data <<\EOFdb.law.find().forEach( function (x) {  x.state = parseInt(x.state);  x.id= NumberInt(x.id); x.eift = new ISODate(x.eift); x.ctime = new ISODate(x.ctime ); x.pt= new ISODate(x.pt);  db.law.save(x);});EOF

3、执行成功标记

[root@Node-C6 mongo_process]# ./mongo_uopdate.shMongoDB shell version: 3.2.7connecting to: databye

参考:
https://glassonionblog.wordpress.com/2014/05/15/mongodb-changing-column-names-and-column-types/

作者:铭毅天下
转载请标明出处,原文地址:
http://blog.csdn.net/laoyang360/article/details/72594344
如果感觉本文对您有帮助,请点击‘顶’支持一下,您的支持是我坚持写作最大的动力,谢谢!

原创粉丝点击