我正在开发一个SQL Server数据库,其中db1.dbo.batches.id
存储为1234
但db2.dbo.activity.batch_id
存储为B1234
。
我正在尝试加入这两个表格,就像这样......
SELECT column1, column2
FROM db1.dbo.batches AS b
INNER JOIN db2.dbo.activity AS a
ON ('B' + b.id) = a.batch_id
问题是('B' + b.id)
。我尝试了CONCAT('B' + b.id)
,CAST('B' + b.id)
和CONVERT(varchar(10),'B' + b.id)
,但都没有效果。
我可以运行第二个选择查询,但我希望有更优雅的东西。
有什么想法吗?干杯!
答案 0 :(得分:1)
尝试将'B'放在CONVERT函数之外:
SELECT column1, column2
FROM db1.dbo.batches AS b
INNER JOIN db2.dbo.activity AS a
ON 'B' + CONVERT(varchar(10), b.id) = a.batch_id