Badge for posts with Likes from a specific group

Ich hatte das Gefühl, ich war schon nah dran. :upside_down_face: Gut gemacht. :clap:

3 „Gefällt mir“

Ich versuche herauszufinden, ob eine CTE effizienter ist, aber das raubt mir den letzten Nerv :melting_face:


WITH staff_liked AS (

       SELECT COUNT(*), pa.post_id
       FROM post_actions pa
       JOIN group_users gu ON gu.user_id = pa.user_id
       WHERE post_action_type_id = 2
       AND gu.group_id = 3
       AND deleted_at IS NULL
       GROUP BY pa.post_id
       HAVING COUNT(*) >= 5

)

SELECT p.user_id, MAX(p.created_at) granted_at
FROM badge_posts p
WHERE p.id IN (SELECT post_id FROM staff_liked)
   AND p.user_id >= 0
GROUP BY p.user_id
HAVING COUNT(*) >= 10
2 „Gefällt mir“

3 Beiträge wurden in ein neues Thema aufgeteilt: Was ist der 'Backfill`?

[quote=“JammyDodger, post:25, topic:276728”]
zählt nur Beiträge aus öffentlichen Kategorien
[/quote]Hm. Das bedeutet, dass es zum Beispiel unsere gesperrte TL0-Kategorie nicht zählt?

1 „Gefällt mir“

Ja, die badge_post-Ansicht filtert einige Dinge vor, um die Abfragen zu vereinfachen. Sie können sie so anpassen, dass stattdessen die posts-Tabelle verwendet wird, die alle Kategorien einschließt. Möglicherweise benötigen Sie jedoch eine zusätzliche Zeile oder zwei, um gelöschte Beiträge oder gelöschte Themen usw. auszuschließen (obwohl dies möglicherweise nicht erforderlich ist, wenn Sie es einfach halten möchten und die Leute die Auszeichnung behalten lassen möchten, sobald sie sie verdient haben, auch wenn ihre Beiträge gelöscht werden).

1 „Gefällt mir“