Data explorer query pour événements ?

J’ai essayé de faire une requête aussi simple que celle-ci pour commencer :

SELECT *
FROM discourse_post_event_invitees
WHERE post_id = :post_id

Malheureusement, je n’obtiens aucun résultat pour un message dont je sais qu’il a 15 utilisateurs marqués comme “Participeront”. Des idées ?

1 « J'aime »

Cela devrait fonctionner. Récupérez-vous le bon identifiant de publication à partir du JSON ?

Je pense que vous pourriez le relier à la table des publications et utiliser un identifiant de sujet, ce qui pourrait être moins compliqué que de trouver l’identifiant de publication. Quelque chose comme :

-- [params]
-- topic_id :topic_id

SELECT ei.user_id, ei.status
FROM discourse_post_event_invitees ei
JOIN posts p ON p.id = ei.post_id 
WHERE p.topic_id = :topic_id

2 « J'aime »

D’accord, on s’en rapproche. Cela renvoie tout le monde qui participe ou est intéressé, comment faites-vous la différence ?

Ah, d’accord, le nom de la clé « status » m’a un peu embrouillé. Je pensais que c’était une sorte de statut de l’événement.

status = 0 = Présent
status = 1 = Intéressé
status = 2 = Absent

2 « J'aime »

Vous pouvez le rendre un peu plus facile à lire sans avoir à mémoriser les codes également si vous ajoutez quelque chose comme ceci :


-- [params]
-- topic_id :topic_id

SELECT ei.user_id,
      CASE
       WHEN ei.status = 0 THEN 'Going'
       WHEN ei.status = 1 THEN 'Interested'
       WHEN ei.status = 2 THEN 'Not going'
        END AS "Going?"
FROM discourse_post_event_invitees ei
JOIN posts p ON p.id = ei.post_id
WHERE p.topic_id = :topic_id
ORDER BY ei.status

4 « J'aime »