0
我簡化了mysql的值並給出了值。在這種master_course_id值應該來替代地等所需輸出用替代索引值獲取mysql值
數據庫值
master_course_id register_number
1 A1
1 A2
1 A3
2 B1
2 B2
2 B3
3 C1
3 C2
3 C3
4 D1
4 D2
4 D3
5 E1
5 E2
5 E3
電流輸出
master_course_id register_number
1 A1
2 B1
3 C1
4 D1
5 E1
1 A2
2 B2
3 C2
4 D2
5 E2
1 A3
2 B3
3 C3
4 D3
5 E3
所需的輸出
master_course_id register_number
1 A1
2 B1
1 A2
2 B2
1 A3
2 B3
3 C1
4 D1
3 C2
4 D2
3 C3
4 D3
5 E1
5 E2
5 E3
MySQL查詢
SELECT register_number
FROM (
SELECT master_course_id, register_number,
@position := IF(master_course_id = @prev_course, @position+1, 1) AS position,
@prev_course := master_course_id
FROM (SELECT * FROM master
WHERE master_course_id IN ('1', '2', '3', '4', '5')
ORDER BY master_course_id, register_number) AS m,
CROSS JOIN (SELECT @position := 0, @prev_course := null) AS vars
) AS t
ORDER BY position, master_course_id
COURSE_ID 1和2應替代地來首先,如果任一個ID完成意味着它應該移動到下一個ID 3或4同樣地,直到結束它應該循環。這意味着course_id或者如何在mysql中實現這個目標
HII我努力我會更新 –
採取的想法從這個 –