我有两个看起来像这样的表
Value EntryID
0200 43300008191907010611241000917561326051
Value EntryID
test 43300008191907010611241000917561326051
我想通过INNER JOIN在EntryID号上加入它们,但即使它是一个nvarchar,连接也不起作用(结果没什么,我的新表是空的)。为什么呢?
SELECT * FROM #T_TableA AS A INNER JOIN #T_TableB AS B ON A.EntryID = B.EntryID
答案 0 :(得分:-1)
也许一个字段包含额外的空格?使用TRIM
功能删除空格:
应该是这样的:
INNER JOIN #T_TableB AS B ON TRIM(A.EntryID) =TRIM(B.EntryID)
或者:
INNER JOIN #T_TableB AS B ON RTRIM(LTRIM(A.EntryID)) =RTRIM(LTRIM(B.EntryID))
答案 1 :(得分:-3)
使用内连接无法组合。尝试使用FULL JOIN。如果您尝试生成一行单行,请尝试左或右连接。如果您尝试将行放在新表中,则两行看起来相同,请使用UNION