2015-06-10 70 views
-1

我有兩列的表。該Seq列去從1到100如何將表分成4組?

Part_No    Seq 
A23     1 
B88     2 
C34     3 
A43     4 
B48     5 
E11     6 
A87     7 
E64     8 
...TILL Seq 100 

我現在想要拆分該表如下圖所示:

Part_No_a    Part No_b   Part_No_c   Part_No_d 
A23      B88     C34     A43 
B48      E11     A87     E64 

回答

3

我會使用條件與聚集模數功能:

select max(case when seq % 4 = 1 then part_no end) as part_no_a, 
     max(case when seq % 4 = 2 then part_no end) as part_no_b, 
     max(case when seq % 4 = 3 then part_no end) as part_no_c, 
     max(case when seq % 4 = 0 then part_no end) as part_no_d 
from databasetable t 
group by ((seq - 1)/4); 
+0

謝謝戈登。它像一個魅力。我很好奇小組條款究竟做了什麼? – Sam

+1

嗨,你可以在這裏閱讀更多關於GROUP BY:http://www.w3schools.com/sql/sql_groupby.asp –