繁体   English   中英

使用ETL和SQL将数字读取并写入.txt

[英]Read&Write Numbers to .txt using ETL and SQL

我正在从.xls文件编写.txt。 我正在使用JasperETL读取excel并将数据插入MSSQL,然后写入.txt文件。

在excel文件中,我有一个看起来像20.000,00的数字(金额),但有时由于区域设置的原因,该数字在SQL中以20,000.00导入(分隔符-反转,变成。和。变成,)。 。

我的最终格式需要看起来像这样20000.00 ,为此我在MSSQL中使用REPLACE函数。

有什么方法可以使用T-SQL查询来解决此问题?

我一直在考虑使用旧方法,为每种可能的格式制作CASES,类似这样。

CASE WHEN sum like 'x.xxx,xx' THEN...
WHEN sum like 'x,xxx.xx' THEN...

但是我也在寻找替代品。

提前致谢,

我实际上已经通过SQL查询解决了此问题

如果有人遇到我,这就是答案

CASE WHEN CHARINDEX('.',@test) > CHARINDEX(',',@test) THEN REPLACE(@test,',','')
WHEN CHARINDEX('.',@test) < CHARINDEX(',',@test) THEN REPLACE(REPLACE(@test,'.',''),',','.')

Replace @test with your column

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM