Devrait profiter de Noël ! badge

Devrait profiter de Noël !

Ce code attribue un badge à chaque utilisateur qui se connecte entre le ‘jour de l'année’ = 358 et 2 jours dans la nouvelle année. Formulez-le comme vous le souhaitez !

SQL :

SELECT distinct(user_id), CURRENT_DATE as granted_at  FROM user_visits WHERE
date_part('doy', visited_at) >= 358
OR
date_part('doy', visited_at) <= 2

Ce que je voudrais, c'est attribuer le badge chaque jour où ils visitent entre les deux dates. Aidez-moi s'il vous plaît !

Je pense que si vous ajoutez un autre champ comme “visited_at”, cela fonctionnerait.

Parce que vous utilisez uniquement user_id et current_timestamp, et qu’ils sont distincts uniquement sur user_id, car current_timestamp serait le même pour chaque ligne.
Si vous ajoutez visited_at, ils pourraient être distincts, et ainsi un badge pour chaque jour.

Mais peut-être avez-vous déjà résolu cela ;).

Edit1 : En fait, je ne pense pas que cette requête ait besoin de distinct.

En m’appuyant sur ce que @Rafael_Lima_Vasconce a suggéré, j’ai créé l’exemple suivant pour un badge « Pâques 2019 ».

Je n’ai absolument aucune expérience avec SQL, à part modifier des valeurs numériques dans certaines des requêtes de badges intéressantes qui ont été publiées ici, mais je ne vois aucune indication que cela ne devrait pas fonctionner (en supposant que vous cherchez toujours une solution).

Si vous souhaitez que les personnes reçoivent le badge plusieurs fois, je pense qu’il suffit d’activer cette option de case à cocher lors de la configuration de votre badge. Sinon, cela ne devrait leur attribuer le badge que la première fois qu’ils visitent pendant la période spécifiée.