我正在使用python模块将数据加载到tsv:
cursor = con.cursor()
tsv_file = open(f"{name}.tsv", "w",encoding='UTF-8')
csv.writer(tsv_file, delimiter='\t',quotechar="", lineterminator="\n", quoting=csv.QUOTE_NONE)
r = cursor.execute(f"""select column1, column2, or_num
from tablename s
""")
writer.writerow([ i[0] for i in cursor.description ]) # heading row
for row in cursor:
writer.writerow(row)
我尝试过:
1)to_char(round(or_num),'9999D999')or_num
结果常规数,其开头为空格,分隔符后为零:
2)to_char(or_num,'9990D99', 'NLS_NUMERIC_CHARACTERS = '',.''')
结果-如第一个示例
3)replace(or_num,'.',',')
结果:,8需要0,8
我想得到这个结果(将点更改为逗号)
答案 0 :(得分:0)
要将小数字符设置为逗号,将分组分隔符设置为句点,
在会话级别指定NLS_NUMERIC_CHARACTERS
参数,如下所示:
ALTER SESSION SET NLS_NUMERIC_CHARACTERS = ",."
现在在同一会话中,执行查询以在下载的csv文件中查看结果。
干杯!