產生價值
大多數資料庫沒有本地生成一系列數字用於臨時使用的方法; 但是,公用表表示式可以與遞迴一起使用來模擬該型別的函式。
下面的示例生成一個名為 Numbers
的公用表表示式,其中列 i
有一行數字 1-5:
--Give a table name `Numbers" and a column `i` to hold the numbers
WITH Numbers(i) AS (
--Starting number/index
SELECT 1
--Top-level UNION ALL operator required for recursion
UNION ALL
--Iteration expression:
SELECT i + 1
--Table expression we first declared used as source for recursion
FROM Numbers
--Clause to define the end of the recursion
WHERE i < 5
)
--Use the generated table expression like a regular table
SELECT i FROM Numbers;
I |
---|
1 |
2 |
3 |
4 |
五 |
此方法可以與任何數字間隔以及其他型別的資料一起使用。