[英]T-SQL Query Self join via Date Table
我正在嘗試編寫一個通過日期表將表連接到自身的查詢。 日期表中每行填充一天,日期超過200年(不要問我沒有設計它)。 它有一個日期列和一個上一個工作日期的列(即如果它是星期一,則上一個星期五將是上一個星期五)。
另一個表格讓我們稱之為價格有一個日期列和一個ID來確定每天一次的價格類型。 我需要通過日期表將價格與自己聯系起來,以便每天使用類型列來確定哪一個屬於彼此。
Todays Date | Todays Price | Previous Working Day Date | Previous Working Day Price | Price Type
有任何想法嗎?
就像是:
SELECT today.Date, today.Price, lwd.Date, lwd.Price, today.TypeId
FROM Price AS today
JOIN Date AS d
ON d.Date = today.Date
JOIN Price AS lwd
ON lwd.Date = d.PreviousWorkingDate
也許是這樣的:
SELECT
today.Date,
today.Price,
yesterday.Date,
yesterday.Price,
today.PriceType
FROM Price today
INNER JOIN dates d ON today.Date = d.Date
INNER JOIN Price yesterday
ON d.YesterdayDate = yesterday.Date AND today.PriceType = yesterday.PriceType
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.