gpt4 book ai didi

sql - 在 JOIN 条件下使用 RTRIM

转载 作者:行者123 更新时间:2023-12-01 11:04:29 26 4
gpt4 key购买 nike

我想将两个包含产品的表按描述放在一起

表 1:[..fields..] [DESCRIPTION1] [..fields..]

表 2:[..fields..] [DESCRIPTION2] [..fields..]

SELECT [..fields..] FROM TABLE1,TABLE2 
INNER JOIN TABLE1
ON TABLE1.DESCRIPTION1 = TABLE2.DESCRIPTION2

但很多情况下,两个表中都有以空格结尾的描述,我也想得到它们,所以我就这样尝试了:

SELECT [..fields..] FROM TABLE1,TABLE2 
INNER JOIN TABLE1
ON TABLE1.DESCRIPTION1 = TABLE2.DESCRIPTION2
OR RTRIM(TABLE1.DESCRIPTION1) = RTRIM(TABLE2.DESCRIPTION2)

这不会产生错误,但不会带来更多数据。

有人能帮帮我吗?

感谢每一个帮助:)

提前致谢,哈利

最佳答案

问题可能是描述末尾的 CRLF 字符,它在 SSMS 中看起来像空格,不会被 RTRIM() 删除。

要检查,请查看选择 where Description like '%' + char(13) + char(10) 是否返回任何内容。如果 Description 末尾看起来只有 1 个空格,请单独尝试 char(13)char(10)。最后,制表符 (char(9)) 也看起来像一个空格,所以您也可以试试。

如果它确实是这些字符中的任何一个,您可以使用 REPLACE 来摆脱它们:

REPLACE(REPLACE(REPLACE(MyField, CHAR(10), ''), CHAR(13), ''), CHAR(9), '')

我找到了here .

关于sql - 在 JOIN 条件下使用 RTRIM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7406105/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com