あなたのコミュニティで最も一般的に使用されているリアクションは何ですか?

Reactions on Meta での議論の続きです。

パートタイムで仕事をしているあるサイトでのリアクションの使用方法について興味がありました。そのサイトは大学進学に関するフォーラムなので、志望校への合格/不合格などの投稿があります。私たちは :+1: を「いいね」絵文字として使用しているため、デフォルトの「いいね」である :heart: と比較して、この絵文字のランキングが高くなっています。以下はその結果です。

リアクション 投稿数 回数
:+1: 260494 720859
:100: 16116 25738
:heart: 13315 23523
:tada: 7538 22674
:rofl: 7200 15720
:mending_heart: 6341 26875
:bulb: 3854 4404
:astonished: 2795 4911
:smile: 2286 2881
:joy: 1758 2623
:sob: 1708 2360
:angry: 1613 3396
:wink: 336 352
:heavy_check_mark: 30 43

リアクションの最初のリストは、投稿で最も一般的に使用されている絵文字を調べて作成しました。メンバーからのフィードバックに基づいてリストを調整しました。私は :heavy_check_mark: が好きですが、コミュニティがそうでないことは早い段階で明らかでした。そこで、別のものに交換しました。

あなたのサイトがどのように比較されるかを知りたい場合は、私が使用したクエリは次のとおりです。

select ':'||reaction_value||':' reaction,
       count(*) posts,
       coalesce(sum(reaction_users_count), sum(like_count)) count
from discourse_reactions_reactions drr
     join posts p on post_id = p.id
group by reaction_value
order by count(*) desc

豆知識: :gift: 絵文字が投稿で頻繁に使用される理由を理解するのに苦労しました。最終的に原因を突き止めました: :robot: でした。

「いいね!」 10

これをコミュニティに共有して、もっと多くの人に見てもらいましょう。:eyes:

クエリは「いいね!」を正しくカウントしていないようです。少なくとも、私たちの「いいね!」のすべてをカウントしていません(おそらく、途中でリアクションを有効にしたためかもしれません)。

リアクション 投稿数 カウント
:heart: 52295 144915
:+1: 1167 1224
:100: 1101 1236

対して:

リアクション値 カウント
:heart: 1371442
:100: 1236
:+1: 1224
参考までに、テーブルを作成するためにこのクエリの小さなバリエーションを使用しています:
SELECT source.reaction_value,
       count
FROM

 (
 (

SELECT
    CASE WHEN post_action_type_id = 2 THEN 'heart' END AS reaction_value,
    COUNT(*) AS count
FROM post_actions
WHERE post_action_type_id = 2
  AND deleted_at IS NULL
GROUP BY 1

)
UNION ALL
(

SELECT
    reaction_value,
    SUM(reaction_users_count) AS count
FROM discourse_reactions_reactions
WHERE reaction_value <> 'heart'
GROUP BY 1

)
) AS source

GROUP BY 1,2
ORDER BY 2 DESC

レポートセクションにも標準のクエリがあるので、クロスチェックできます(ただし、テーブルはコピー&ペーストがそれほど簡単ではありません :slight_smile:) - /admin/reports/reactions

「いいね!」 4

Ah。2つの非常に異なるものをカウントしているため、UNION ALL がこのクエリの正しい方法です。discourse_reactions_reactions にエントリがない投稿をカバーするには、外部結合が必要です。それを追加するとクエリがタイムアウトしたため、問題が解決するかどうかを確認できません。いずれにしても、UNION がここで正しい答えです。

ただし、post_actions がいいねの数を過剰にカウントするのではないかと少し気になっています。いいねをした後にそのリアクションを削除または変更した場合を考慮していますか?

College Confidential ではいいねに :+1: を使用していたため、クエリで ‘heart’ を ‘+1’ に変更する必要がありました。以下は、そのクエリの結果です。

reaction count
:+1: 2089798
:mending_heart: 28167
:100: 27070
:heart: 24676
:tada: 24055
:rofl: 16778
:astonished: 5325
:bulb: 4590
:angry: 3547
:smile: 3078
:joy: 2623
:sob: 2443
:wink: 369
:heavy_check_mark: 43
「いいね!」 2

それは良い点ですね。戻って AND deleted_at IS NULL を追加します。

「いいね!」 1