H5W3
当前位置:H5W3 > 其他技术问题 > 正文

在mysql中用整数表示的日期和时间,如何导入到DolphinDB中

如下图所示是mysql中一张表的样本数据,


其中的trade_date表示日期,数据类型是int,20100104表示2010年1月4日;trade_time是时间,数据类型也是int,93100表示09:31:00。

现在在DolphinDB database中,建库脚本如下:

monthDB = database(,VALUE, 1990.01M..2050.12M)
tickDB = database(, HASH, [SYMBOL, 20])
db = database("dfs://minute_price", COMPO, [monthDB, tickDB])
columns = `trade_date`trade_time`secu_code`int_code`code_type`open`close`high`low`volume`turnover
types = [DATE,TIME,SYMBOL,INT,INT,DOUBLE,DOUBLE,DOUBLE,DOUBLE,DOUBLE,DOUBLE]
db.createPartitionedTable(table(10:0, columns, types), `price_data,`trade_date`secu_code)

也就是trade_date,trade_time要转换成date和time类型,我在执行下面代码时:

schema=select name,type from extractSchema(conn,`quote_1m)
update schema set type="TIME" where name="trade_time"
update schema set type="DATE" where name="trade_date"
mysql::loadEx(conn, db,`quote_1m, `trade_date`secu_code, schema);

提示Couldn’t convert from INT to DATE。请教一下这个应该怎么转换?

回答

这种问题我们生产中遇到过类似的场景,不过我们是oracle迁移到postgresql中。

数据入库(DolphinDB)需要将trade_date、trade_time强制转换成时间类型,简单的看了下api文档,使用datetime关键字,可能实际操作时候还比较麻烦,要先转换成字符串(进行格式转换),再转换成时间类型。

本文地址:H5W3 » 在mysql中用整数表示的日期和时间,如何导入到DolphinDB中

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址