【发布时间】:2020-03-25 18:31:25
【问题描述】:
我从文本文件加载数据,但它似乎不包含前导空格,但是当我从表中选择时,我看到前导空格但无法使用 LTRIM 函数将其删除:
SELECT ltrim(DATA) FROM MYTABLE WHERE LineNumber = 4
我得到以下信息:
T000000000004
在 T 之前有一个前导空格
当我执行select convert(varbinary,data) from mytable 时,我得到的就是这样:
0x0A54303030303030303030303034
在文件中看起来没问题:T000000000004 - 没有前导空格,它从文件中的第一个字符开始。但是,在表格中插入前导空格。
我该如何解决?
【问题讨论】:
-
它可能是一个不可见的字符,不是空格,这就是 LTRIM 无法删除它的原因。您可以尝试获取该字符的字符代码(ASCII/UNICODE)吗?它可能会给你一个线索。
-
你给我们的例子确实删除了db<>fiddle。 Acutally 复制您收到的值,并使用 LTRIM 显示您的 SQL
-
@Larnu 那是因为我在这里输入的。
-
这就是我说 " 的原因。Acutally 复制您收到的值,并使用 LTRIM 显示您的 SQL" @gene 。您的问题没有复制问题,也没有使用
LTRIM。 -
@Larnu 我修改了问题