我有两个表,表1包含一列,该表构成表2中列的部分值,例如:
Table1.XName =“ 123456” Table2.ZName =“ ABC-123456”
我需要创建一个与之匹配的JOIN,但是使用MS-SQL 2008时,我很难进行这项工作。这是我的尝试的一个示例:
SELECT * FROM Table1 LEFT OUTER JOIN Table2 ON(’ABC-‘+ Table1.XName)= Table2.ZName
我使用哪种类型的JOIN都无关紧要,或者在哪个方向都失败了。我知道我在这里正在做一些蠢事,因此,如果有人能指出正确的方向,我将不胜感激。
这对我有用:
DECLARE @Table1 TABLE (XName VARCHAR(200)) DECLARE @Table2 TABLE (ZName VARCHAR(200)) INSERT INTO @Table1 VALUES ('123456') INSERT INTO @Table2 VALUES ('ABC-123456') SELECT * FROM @Table1 LEFT JOIN @Table2 ON ZName = 'ABC-' + XName --- 123456 ABC-123456
您能否发布表的定义和收到的错误消息?