J'ai cette requête: Il renvoie: p> parfait! P> Je voudrais Appliquez un distinct comme celui-ci (voir le mot-clé "distinct"): p> Il renvoie: p> J'ai essayé un beaucoup de choses sans succès. Comment puis-je faire cela? P> P>
3 Réponses :
J'ai trouvé la solution comme celle-ci: Toutes les colonnes doivent apparaître dans la sélection (elle est écrite dans le message d'erreur ...). Désolé pour le désagrément ... p> p>
select distinct (j.id, j.short_name, j.status) from jobs as j inner join job_translations as jt on j.id = jt.job_id where j.deleted_at is null and short_name ilike '%GES.PAY%' order by case when j.short_name = 'GES.PAY' then 0 else 1 end, j.short_name; The ORDER BY clause cannot be applied before distinctit can only be applied after the DISTINCT been applied. Only the fields in the SELECT statement are taken into consideration for the DISTINCT operations, those are the only fields may be used in the ORDER BY.
distinct code> est pas b> une fonction. Votre requête renvoie une colonne Single B> un type d'enregistrement anonyme avec trois champs
Salut malik. Merci pour votre réponse. Quand j'ai ajouté le (), j'ai le même message d'erreur. Votre solution ne fonctionne pas ...
Vous pouvez mettre les distincts dans une table dérivée (sous-requête AKA), puis appliquer la commande par la requête extérieure: si vous souhaitez choisir un identifiant unique, vous souhaitez Peut également utiliser distinct sur () code> p>
Vous ne voulez que une ligne par carte d'identité?
Oui absolument. Bur La solution que j'ai écrite ci-dessous convient à moi. Je pense que je vais l'adopter. Merci