0
私は以下の質問があります。ただし、最後の2つのフィールドを選択すると、USDVal & cpはクエリを実行すると無効な列名になります。私はなぜか分からないのですか?ソースピボットは列名が好きではありません
最後の行(「ソースとして」)を除いて以下のクエリを実行すると、クエリが実行されるためです。
;with s as
(
select cp, mktVal, date
from tblDaily
where date = '2017-01-30' and id = 'SFAB'
), h as
(
select idMK, name, cp, wgt
from tblDrift
where date = '2017-03-30' and idSub = 'V12' and wgt <> 0
), m as
(
select h.idMK, h.name, h.wgt * s.mktVal as USDVal, h.cp
from h left join s on h.cp = s.cp
)
select idMK, name, USDVal, cp from m
as source pivot(max(USDVal) for cp in ([BPP],[NCV])) as pvt
素晴らしい作品に感謝!あなたはなぜ私のことを知っていますか? – mHelpMe
@mHelpMe [ピボットの構文](https://docs.microsoft.com/en-us/sql/t-sql/queries/from-using-pivot-and-unpivot)を参照してください。あなたのコードは 'pvt'というエイリアスを持つ派生テーブルを定義しますが、あなたはそれを使用しません...これがあなたの問題を解決すれば、これを受け入れることは親切です – Shnugo