SQL表中的麻烦字符?

时间:2014-08-26 13:26:41

标签: sql sql-server unicode encoding ascii

我从一个存储在MS SQL Server中的中型表(几百万条记录)中提取记录。结果集有大约30k行,但我无法干净地写入.csv或.xslx。其中一个字段是字符串。数百个行在该字符串字段中有一些字符导致换行符或列中断,这使我无法复制格式良好的表。

当在Management Studio中显示结果集时,导致的任何字符都显示为选项卡或行中的多个空格。但是,它似乎是其他一些字符,因为替换多个空格或select语句中的制表符(etc)不会改变Management Studio中结果集的外观或其他地方的数据行为。

如果我在记事本中选择其中一个字符串记录,也会存在换行符。

尝试了I / O方法:

  

- 从SQL Server Management Studio复制并粘贴到excel

     

- 在Management Studio中单击鼠标右键并将结果另存为CSV

     

- 使用pydobc将数据拖入python并写入csv。

     

- 将数据删除到python中,使用pandas编写csv(带有各种分隔符)或xslx。

尝试了查询方法:

  

- SELECT REPLACE(String, X, '')其中X是'\ t'或'\ n'或'\ r'或''或':'等等。

有没有人想过这个角色会是什么,或者我怎么试着找到它?谢天谢地。

1 个答案:

答案 0 :(得分:2)

通常这是char(10)换行和/或char(13)回​​车:

SELECT REPLACE(REPLACE(string,char(10),''),char(13),'')