所以我想要使用SQL加入两个表。
由于他们没有使用的公共专栏
SELECT NEW_ID = CONCAT ('0',table1.ID)
既然我在两个表中都有匹配数据的新列,我该如何连接两个表?有没有办法将NEW_ID列用作临时列,以便我不必更改表1?
答案 0 :(得分:1)
在你的情况下,适合。当然,在性能方面,它不是最好的解决方案(比较具有不同类型的字段)
Select *
From Table1 As t1 inner join Table2 as t2
ON t1.ID = CAST(t2.ID AS INT)
答案 1 :(得分:-2)
你可以在Join中给出具体的表达式。你不必为此添加一个新的列。喜欢这个
SELECT
*
FROM Table1 A
INNER JOIN Table2 B
ON RIGHT('00'+A.Id,2) = RIGHT('00'+B.Id,2)
答案 2 :(得分:-2)
不同的方式,这里有一个:
;WITH CTE AS
(
SELECT NEW_ID = CONCAT ('0',table1.ID) FROM TableA
)
SELECT * FROM CTE AS C INNER JOIN TableB AS B ON C.New_ID = B.ID