Community Building にスライドして、もっと多くの目に留まるようにしよう。![]()
クエリが「いいね」を正しくカウントしていないようだ。少なくとも、私たちのすべてのカウントが正しく反映されているわけではない(おそらく、途中からリアクション機能が有効になったためだろう)。
| リアクション | 投稿数 | カウント |
|---|---|---|
| 52295 | 144915 | |
| 1167 | 1224 | |
| 1101 | 1236 |
対して:
| reaction_value | カウント |
|---|---|
| 1371442 | |
| 1236 | |
| 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
クロスチェック用に、レポートセクションにも標準的なものがあります(ただし、そのテーブルはコピー&ペーストがそれほど簡単ではありません
) - /admin/reports/reactions