如何在SQL Server 2008R2中编写SQL语句以在具有空格的列上连接两个表? 我收到错误“将数据类型varchar转换为数字时出错。”
e.g。表1
[id | value | t2id]
1 | a | 1
2 | b |
3 | c | 2
表2
[id | value]
1 | d
2 | e
3 | f
结果
[id | value | t2id | id | value]
1 | a | 1 | 1 | d
2 | b | |null| null
3 | c | 2 | 2 | e
它是一个左连接,用于显示Table1中的所有值,但t2id列具有Table2和空格中的ID。直接加入这两个表给了我上面的错误。
谢谢
答案 0 :(得分:0)
您可以使用以下查询 -
SELECT *
FROM Table1, Table2
WHERE Table1.T2id = Table2.Id
AND Table1.T2id IS NOT NULL
UNION
SELECT Table1.*, NULL, NULL FROM Table1 WHERE Table1.T2id IS NULL