1
trasposeテーブルMySQLの私は、次の構造を持つMySQLのテーブルを持っている
|user_id|action_type|action_value|timestamp |
|-------|-----------|------------|----------|
|123 |click |search |20-07-2016|
|231 |click |search |20-07-2016|
|123 |click |delete |20-07-2016|
事は、複数の値を取ることができACTION_TYPEが、彼らはので、私は内部の値としてそれらを置くことにしたテーブルの列であってもよいが動的である可能性がある
action_valueはaction_typeをとることができる値です。これは、ユーザーごとのアクション/日あたりで、与えられたACTION_TYPEため、次の
|action_type|timestamp |search|delete|
|-----------|----------|------|------|
|click |20-07-2016|2 |1 |
|-----------|----------|------|------|
を返すクエリを作成することが可能である場合、私は思っていた、タイムスタンプによってその行動やグループ、それを実行するすべてのユーザーを返します。
は、私は次のクエリを試してみましたが、私は両方の列に同じ番号を取得していますSELECT T1.action_type, DATE(T1.timestamp), count(T1.action_value) 'search', count(T2.action_value) 'delete' FROM cohort_actions T1 INNER JOIN (SELECT timestamp, action_value FROM cohort_actions WHERE action_value = 'delete') T2 ON DATE(T1.timestamp) = DATE(T2.timestamp) WHERE T1.action_type = 'click' AND T1.action_value = 'search' GROUP BY DATE(T1.timestamp);