私はそのようなテーブルT1を持っています
gsdv |nsdv |esdv
-------------------
228.90 |216.41|0.00
となるテーブル T2
ds |nm
--------------------------
'Non-Revenue Sales'|'ESDV'
'Gross Sales' |'GSDV'
'Net Sales' |'NSDV'
次のテーブルを取得するにはどうすればよいですか?
ds |nm |val
---------------------------------
'Non-Revenue Sales'|'ESDV'|0.00
'Gross Sales' |'GSDV'|228.90
'Net Sales' |'NSDV'|216.41
私は次の方法でこれを行うことができることを知っています
SELECT ds,nm,esdv val FROM T1,T2 WHERE nm = 'esdv'
UNION
SELECT ds,nm,gsdv val FROM T1,T2 WHERE nm = 'gsdv'
UNION
SELECT ds,nm,nsdv val FROM T1,T2 WHERE nm = 'nsdv'
しかし、私はより一般的でより良い解決策を探しています。私は Sybase を使用していますが、他の DBMS でこれを行う方法を考えられる場合は、お知らせください。ありがとう。