Errore SQL del badge: q.user_id

Ciao!

Sto lavorando alla creazione di un badge per gli utenti che hanno un post contrassegnato come soluzione tramite il plugin “solutions checkbox”. Questa è la query SQL:

SELECT
       u.username AS "username",
       count(*) AS "count_received_best_answer",
       current_timestamp granted_at
FROM
       notifications n
JOIN
       users u ON n.user_id = u.id
JOIN
       topics t ON n.topic_id = t.id
JOIN
       categories c ON t.category_id = c.id
WHERE
       n.notification_type = 14 AND
       n.data LIKE '%solved.accepted_notification%' AND 
       n.created_at > CURRENT_DATE - INTERVAL '30 days'
GROUP BY u.username
HAVING count(*) > 0
ORDER BY count(*)

Tuttavia, quando provo a visualizzare l’anteprima del badge, ottengo questo errore:

Dalle ricerche effettuate qui, ho capito che q.user_id è un campo presente nello sfondo di questi lavori relativi ai badge, ma non riesco a capire perché stia ottenendo questo errore. Qualsiasi aiuto è apprezzato!

Your query needs to return at least the following columns:

  • user_id
  • granted_at

Also, you should definitely take a look at Add Badge to Solve answer - #2 by dax. :wink:

4 Mi Piace

YES. That was all I needed. Not sure why staring at it for four hours did not make it obvious. thanks much @gerhard

1 Mi Piace

How does this differ from the Add Badge to Solve answer topic? I am looking to do the same thing but unsure if either one would be applied for every solution or a set number?

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.