我正在尝试将具有少数字段指数值的csv文件加载到SQL Server表中。这些指数值需要转换为以下所示的varchar格式。我尝试了几种情况都不理想的情况。您能建议我如何处理这些值吗?
输入值:1.12001E + 17预期输出:1000000JPM10000000
TIA !!
在表达式中使用to_char(输入值)。
我不确定1000000JPM10000000。您是不是要1.11.1 * 10 Power(17)。如果是,则可以拆分字符串并分别处理。
v_col_exp_val = SUBSTR(col_name, instr(col_name,'E+'))
v_col_base_val = SUBSTR(col_name,1, instr(col_name,'E+'))
out_col_name = IIF ( instr(col_name,'E+')=0, col_name, v_col_base_val * POWER( 10, v_col_exp_val)
这将考虑数据是否也具有指数值。
HTH