SQL通过大id号连接两个表

时间:2016-03-09 14:55:52

标签: sql

我有两个看起来像这样的表

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

2 个答案:

答案 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