如何检查TABLEA中列的任何值是否包含尾随空格?
我只知道如何检查一列是否有尾随空格,但不是全部。

       SELECT *
       FROM TABLEA
       WHERE Col1 LIKE ('* ');


由于我的表中有45列,因此在where子句中指定所有内容将非常麻烦。目前,我正在通过制表符手动进行操作-浏览列和行,还有更好的建议吗?

提前致谢

最佳答案

在所有列上执行RTrim,然后将其插入

Select RTrim(Col1) As TrimmedCol1, Rtrim(Col2) As TrimmedCol2,. . . .
From TABLEA


如果您有一个主键计数器,则可以将结果插入同一表中并删除原始值。如果不是,最好的方法是将这些值插入到临时表中。

INSERT INTO TempTable (Col1, Col2,....)
 Select RTrim(Col1) As TrimmedCol1, Rtrim(Col2) As TrimmedCol2,. . . .
    From TABLEA


如果您只想获取带有尾随空格的行,则可以执行以下操作:

SELECT * FROM TableA
WHERE
Col1 <> RTrim(Col1) OR
Col2 <> RTrim(Col2) OR
...
Col44 <> RTrim(Col44)

09-27 18:26