2010-03-26 6 views
10

Hope this logique ...requête Django pour obtenir un ensemble unique basé sur la valeur d'une colonne particulière

est-il un moyen simple de renvoyer un ensemble de valeurs d'une table en fonction des valeurs d'une seule colonne étant nettement unique, ? Ce que je veux espérer quelque chose comme:

SegCode.query.filter(ref.unique()).only('ref') 

Ce n'est pas vrai code, mais j'espérais qu'il y avait une fonction simple là-bas qui accomplira cette ...


Par ex Le tableau pourrait ressembler à:

1 | abc | 123 | AAA 
2 | def | 456 | AAA 
3 | ghi | 789 | BBB 
4 | jkl | 012 | CCC 
5 | mno | 345 | CCC 
6 | pqr | 678 | CCC 
7 | stu | 901 | DDD 
8 | vwx | 234 | DDD 

Alors, je voudrais un ensemble qui revient avec: [AAA, BBB, CCC, DDD]

Répondre

14
SegCode.objects.values_list('ref', flat=True).distinct() 

Je pense que c'est ce que vous êtes après, votre question n'est pas vraiment clear

+0

N'avez pas encore essayé votre code, mais je viens de le mettre à jour avec quelques informations supplémentaires, en espérant clarifier ce que j'essaie d'accomplir. – kafuchau

+0

Ok, d'après votre modification, mon code est exactement ce que vous voulez – priestc

+0

Cela ne fonctionne que si ma classe SegCode est un modèle Django, correct? Que faire si ma classe était une entité Elixir, ce qui signifie que j'ai dû utiliser Querysets pour faire la requête? Je demande parce que j'obtiens une erreur: l'objet de type 'SegCode' n'a aucun attribut 'objets' – kafuchau

Questions connexes