convert顾名思义就是转化, cast差不多
MySQL CONVERT() 函数 | 参考手册
为什么需要这个函数? mysql是弱类型的 where stringcol=1 and intcol='1' 都行 会自动转化,那我为什么还要呢?
mysql有个类型是double ,基本没人用,但是就是有人用。。。用了就有问题。
例如sql select NUMBER_ATTRIBUTE_4 from dwaps.aps_cm_config_data_ce
数据库查出数据
通过java代码查询
看到没,出现了科学计数法, 这怎么可以呢?怎么解决呢?
很简单 java读取double时会科学计数法,那么我不读取double 读取varchar就好了
select convert(NUMBER_ATTRIBUTE_4,char) from dwaps.aps_cm_config_data_ce
问题解决了吗?看似解决了,其实没解决,过了几天发现另外一个问题
targetId=506 batchid=906134083510206460
java读取
但是结果 targetId=506.0 batchid=9.061340835102065e17
转化为char targetId=506 batchid=9.061340835102065e17 还是错的
只能convert(BATCH_ID,SIGNED)
只能转化为int, 所以double类型慎用