具體來說,我有多個與會話關聯的點擊,並且每個點擊都有一個日期時間。對於每個會話,我希望選擇字段'first_click_datetime','second_click_datetime','third_click_datetime'等。在MySQL GROUP BY中,如何選擇第n個值 - 不是最大值或最小值,而是第2個值?
到目前爲止,我有這樣的事情:
SELECT session_id,
min(click_datetime) as first_click_datetime,
CASE
when total_number_of_clicks = 2 then max(click_datetime)
/* when total_number_of_clicks >2 then ???? */
else null
END as second_click_datetime
FROM table1 GROUP BY 1;
我怎樣才能獲得第二,第三,第四等click_datetime?
謝謝!
您可能正在尋找排名的功能.. http://stackoverflow.com/questions/532878/how-to-perform-grouped-ranking-in-mysql –