我有一列由遞增的整陣列成(從 1 開始并增加到 N)。我想創建從 1、2、3、4 開始運行的第二列,然后重置并從 1、2、3、... 開始,依此類推。明確顯示,這就是我想要的:
1 1
2 2
3 3
4 4
5 1
6 2
7 3
8 4
9 1
10 2
11 3
12 4
13 1
14 2
15 3
... ...
你有關于我如何在 SQL 中做到這一點的提示嗎?理想情況下是一個完整的代碼示例?
uj5u.com熱心網友回復:
您可以嘗試對行進行編號ROW_NUMBER()并添加一個簡單的計算:
SELECT Column1, ((ROW_NUMBER() OVER (ORDER BY Column1) - 1) % 4) 1 AS Column2
FROM Yourtable
uj5u.com熱心網友回復:
如果基于“從 1 開始并增加到 N”的陳述,1 和之間的數字N必須是連續的,那么實際上根本不需要ROW_NUMBER;您可以將邏輯應用于您的列Column1:
SELECT Column1,
((Column1 - 1) % 4) 1 AS SequenceColumn
FROM dbo.YourTable;
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/492731.html
上一篇:透視一列并顯示另一列的關聯值
下一篇:獲取嵌套JSON陣列的SQL查詢
