0

我正在处理db1.dbo.batches.id存储为1234db2.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)但都没有奏效。

我可以运行第二个选择查询,但我希望得到更优雅的东西。

有任何想法吗?干杯!

4

1 回答 1

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
于 2012-08-03T01:04:26.523 回答