我需要在SQL中運行簡單的選擇查詢。多次選擇查詢,更改日期
問題是我需要12個輸出基礎不同的月份。有沒有辦法像宏一樣執行一些事情,我只需編寫一次查詢,並且只需更改monthend日期就可以自行運行12次?
感謝
我需要在SQL中運行簡單的選擇查詢。多次選擇查詢,更改日期
問題是我需要12個輸出基礎不同的月份。有沒有辦法像宏一樣執行一些事情,我只需編寫一次查詢,並且只需更改monthend日期就可以自行運行12次?
感謝
你可以使用下面的構造得到12條每個月和交叉運用與原來的查詢結果。
;WITH q AS (
SELECT Column1 = GetDate()
UNION ALL
SELECT DATEADD(mm, 1, q.Column1)
FROM q
WHERE q.Column1 < DATEADD(mm, 11, GetDate())
)
SELECT *
FROM q
嘗試解決關係代數的概念。
翻譯算法的方法,如循環,只能工作到目前爲止。關係代數傳統上有其侷限性(所以你會在所有RDBMS中找到程序支持),但是與CTE和遞歸查詢一起,你幾乎沒有辦法做。
你的問題可以通過
我要說的是概念上的遞歸查詢是最難理解和維護,請閱讀大量示例。
好宏。 :)當然,對於SQL Server 2005+ – 2011-04-11 13:27:49
@Andriy而言,這是真的。 OP沒有提及她正在使用的版本。我認爲它至少是2005年。如果不是,那麼with結構關閉。 – 2011-04-11 13:46:31