次の表を検討してください
users tweets
-------------------- -----------------------------
user_id neu pos neg id _date user_id class
-------------------- -----------------------------
1 1 2011-02-13 1 1
2 2 2011-02-13 1 2
3 2011-02-15 2 1
4 2011-02-16 2 3
5 2011-02-16 2 3
データベース内の各ツイートは分析および分類されています。(ニュートラル)、(ポジティブ)、 (ネガティブ)のtweets.class
いずれかです。ユーザーごとのすべての(ニュートラル、(ポジティブ) および(ネガティブ) ツイートをカウントするクエリが必要です。クエリの最終結果は、次のようになります。1
2
3
neu
pos
neg
UPDATE
users
users
--------------------
user_id neu pos neg
--------------------
1 1 1 0
2 1 0 3
私は今持っていますが、これはまったく機能しません。正しい方向に進んでいますか?
update users u left join (
select count(t.id) as neu from tweets t where class = 1
) on u.user_id = t.user_id
set u.neu = coalesce(neu,0)