MySQL データベース テーブル:
create table t (
visitor_id int(11),
activity_type varchar(10),
date date
);
行:
insert into t (visitor_id, activity_type, date) values (1, 'hit', '2012-1-1');
insert into t (visitor_id, activity_type, date) values (1, 'event', '2012-1-2');
insert into t (visitor_id, activity_type, date) values (2, 'hit', '2012-1-2');
insert into t (visitor_id, activity_type, date) values (2, 'event', '2012-3-5');
insert into t (visitor_id, activity_type, date) values (2, 'hit', '2012-3-2');
insert into t (visitor_id, activity_type, date) values (1, 'hit', '2012-3-5');
insert into t (visitor_id, activity_type, date) values (1, 'hit', '2012-2-1');
ユーザー、アクティビティ タイプ、およびアクティビティが発生した順序のデータ ダンプを取得するクエリを作成したいと考えています。次のようになります。
visitor_id, activity_type, Position
1, hit, 1
1, event, 2
1, hit, 3
1, hit, 4
2, hit, 1
2, hit, 2
2, event, 3
これまでのところ、次の解決策を書いています。
select visitor_id, activity_type, 'Position'
from t1
order by visitor_id, date
;
難しい部分は、列の位置です。これは、その訪問者 ID の行の順序を表す必要があります。位置を決定する方法はありますか?