私はsql script
それone table
を使用してtwo alias
それを作成しJOIN
ていますが、なぜ、いつそれが必要なのかを理解する必要があります。詳しく教えてください。
SELECT
ISNULL(MarketValue,0)
FROM
(
SELECT TOP 5
Delta,
MarketValue
FROM
(
SELECT DISTINCT
FormatNumber(SUM([CURRENT].MarkToMarket), 0, ',', 0) AS Delta,
AVG([CURRENT].Mark) * SUM([CURRENT].Position) AS NumericPosition,
FormatNumber(AVG([CURRENT].Mark) * SUM([CURRENT].Position)* CASE WHEN [CURRENT].SecurityType IN ('Equity','Equity Option') THEN 100 ELSE 1 END, 0, ',', NULL) AS MarketValue
FROM
NAV [CURRENT]
LEFT JOIN
NAV Compare ON
[CURRENT].PurchaseLotId = Compare.PurchaseLotId AND
Compare.Date = '2012-06-06'
WHERE
[CURRENT].SecurityType not in ('Equity')
GROUP BY
ORDER BY
NumericDelta DESC
) Movers
FOR XML PATH ('TR'), TYPE
) AS VARCHAR(MAX)
)
Why it is used like FROM
NAV [CURRENT]
LEFT JOIN
NAV Compare ON
[CURRENT].PurchaseLotId = Compare.PurchaseLotId AND
Compare.Date = '2012-06-06'
NAV は 1 つのテーブルにすぎません。同じテーブルの 2 つのエイリアス NAV [CURRENT] と NAV を比較して LEFT JOIN を使用する目的は何ですか?
詳しく教えてください。