1

列を選択し、結合条件が選択した列をドットで連結するテーブルを結合したいと考えています。例えば

SELECT TBL1.ID,
TBL1.COUNTRY As A,
TBL1.STATE As B,
TBL1.CODE As C
FROM TBL1, TBL2
WHERE TBL2.ID = A+'.'+B+'.'+C

データは、TBL2.IDUS.NY.61」のように表示されます。ここで、USTBL1.COUNTRYNYTBL1.STATEなどです。

更新: SQL フィドル: http://sqlfiddle.com/#!3/26b6b/4

4

2 に答える 2

0

このようなことを試してみてはどうでしょうか

SELECT TBL1.ID,
TBL1.COUNTRY As A,
TBL1.STATE As B,
TBL1.CODE As C
FROM TBL1 
  INNER JOIN TBL2 ON CAST(TBL1.COUNTRY AS varchar(20)) + '.' + CAST(TBL1.STATE AS varchar(20)) + '.' + CAST(TBL1.CODE AS varchar(20)) = CAST(TBL2.ID AS varchar(20))

4 つのフィールドを結合して比較する前に varchar としてキャストするコードを追加しました。

于 2012-04-25T20:45:40.487 に答える
0
SELECT T.name,T2.nam FROM
T INNER JOIN T2
ON T.id = (T2.one + '.' + CAST(T2.two as varchar(50)) + '.' + CAST( T2.thr as varchar(50) ))
于 2012-04-25T21:14:53.963 に答える