私は、この表ピボット内の窓機能は可能ですか?
を持っていると私はピボットを作成する必要があり、user_idは、user_date、感情によってグループ化された平均emotion_levelで、列として感情を表示します。たとえば、user_id = 1、user_date = 2011-07-13、emotion = 'Anger'の場合、平均emotion_levelは4.0です。ではなく、ユーザー、日付や感情によってグループ化された感情のために、
select USER_ID, user_date,
AVG(case emotion when 'Anger' then convert(float, emotion_level) else 0 end) as Anger,
AVG(case emotion when 'Sadness' then convert(float, emotion_level) else 0 end) as Sadness,
AVG(case emotion when 'Interest' then convert(float, emotion_level) else 0 end) as Interest
from emotions group by USER_ID, user_date;
ハーフ作品が、すべての感情の間で平均emotion_levelを計算します。
は私がピボットを作成します。
最初のユーザ+感情のための私の結果は= = 2 '怒り'、それは4
する必要があります、私は推測する、私は(user_date、USER_IDによってパーティション(上のウィンドウ関数を使用する必要があります、感情))、構文を実行することはできません。
それはまったく可能ですか?
私はprodでPostgreSQL 9を使用していますが、上記の例はSQL Serverで書かれています。