有时客户需要流水数据,当导出为excel的时候,客户编号等很长数字的栏位,被excel变成科学记数法,无法正常查看。

因此,需要将Oracle/MySQL中的decimal/int 转 varchar,这样在excel中就可以放心查看了。

Oracle的转换方法:

1.新建表,并插入数据

drop table test purge;
create table test(id number);
insert into test values(13913613345);
select * from test;

2.导出为excel,变为了科学记数法

3.转化方法

select ''''||id from test;

如果是在其他程序/存储过程中执行,比如在utl_file中则:exec sql_to_csv('select ''''''''||id from test','OUT_PATH','test.csv');

 

MySQL的转换方法:

使用cast(  as char())进行转化--select cast(19999992929 as char(20))

转换前,得到输出为数字输出,靠右

转换后,得到输出为字符串输出,靠左

 

 posted on 2018-11-22 16:23  xibuhaohao  阅读(4894)  评论(0编辑  收藏  举报