Excel H2 csvwrite:如何在十进制(7,2)列中用逗号替换小数点

Excel H2 csvwrite:如何在十进制(7,2)列中用逗号替换小数点,excel,csv,h2,Excel,Csv,H2,表PREIS_选项卡中的列deklaration为E_PREIS小数7,2。 在下面的示例中,H2-CSVWRITE在CSV输出中创建一个点。 在Summe-Preis-列中,它按设计工作: call CSVWRITE ('D:\H2-Database\User-Daten\SQL\H2-DB_01/E_PREIS_out.csv', ' select DATUM as "Datum" , sum(E_PRE

表PREIS_选项卡中的列deklaration为E_PREIS小数7,2。 在下面的示例中,H2-CSVWRITE在CSV输出中创建一个点。 在Summe-Preis-列中,它按设计工作:

call CSVWRITE ('D:\H2-Database\User-Daten\SQL\H2-DB_01/E_PREIS_out.csv', '
               select DATUM          as "Datum"
                    , sum(E_PREIS)   as "Summe E-Preis"
                 from PREIS_TAB
                 group by DATUM 
                 order by DATUM desc
             ', 'charset=UTF-8 fieldSeparator=;');
但是,当我使用Excel location Germany打开CSV文件时,Summe E-Preis列不会被解释为Excel试图将货币转换为不同的日期值,这是因为。而不是该列中的

我尝试过替换,但这只适用于字符字段:-。。。还有一些演员的变化 也没有成功

在这里的stackoverflow论坛上,我找到了以下技巧,但仍然存在一个SQL错误-显示为“N[*]”-或者我需要一个完全不同的语法:

     , cast(format((sum(E_PREIS)) , 'N', 'DE-DE') as varchar(20)) 
如何强制H2-CSVWRITE使用十进制逗号格式化E_PREIS的输出列
而不是!使用小数点?

如果要手动打开文件,则需要转到“数据”功能区上的“获取外部数据”选项卡;从文本中选择。文本导入向导将打开,并在步骤3中允许您指定值的格式。步骤3的Advanced选项卡允许您指定小数点和千位分隔符


如果您在VBA中打开它,可以使用Workbooks.OpenText方法自动执行此操作,但我没有对其进行测试:选择基准作为基准,替换Preis,“,”,“作为Summe E-Preis from select datum,sume_Preis from Preis from Preis_tab group by datum order by datum desc”