我必須同步兩個數據庫(在同一臺服務器上)的數據,並實現我使用的存儲過程。使用像在一個內部聯接
來自數據庫A的id是int,來自數據庫B的id是char(25)並且採用以下形式:Item。例如,如果A.Id是42,B.Id是Item42
雖然做查詢,以便這兩個數據庫的奇怪行爲發生:
SELECT A.Id, B.id
FROM A.dbo.table as A
LEFT OUTER JOIN B.dbo.table as B on (B.id like 'Item42')
作品像預期,但
DECLARE @id nvarchar;
SET @id = '42';
SELECT A.Id, B.id
FROM A.dbo.table as A
LEFT OUTER JOIN B.dbo.table as B on (B.id like 'Item' + @id)
回報B.Id.
這是怎麼發生的?
此查詢的工作方式:SELECT A.Id,B.id FROM A.dbo.table as A LEFT OUTER JOIN B.dbo.table as B on(B.id like'Item'+ 42)? – 2011-04-28 15:36:28