Mysql
 sql >> Base de données >  >> RDS >> Mysql

Requête distincte Django MySQL pour obtenir plusieurs valeurs

.distinct([*fields]) ne fonctionne que dans PostgresSQL.

De distinct documents

Voici la différence. Pour un appel distinct() normal, la base de données compare chaque champ de chaque ligne lors de la détermination des lignes distinctes. Pour un appel distinct() avec des noms de champs spécifiés, la base de données ne comparera que les noms de champs spécifiés.

Comme indiqué, tous les champs d'un enregistrement sont vérifiés. Dans votre cas, il est fort probable que vous obteniez des enregistrements avec des valeurs de champ différentes (plus probablement un cas si vous interrogez plusieurs tables ManyToMany ou des relations ForeignKey).

Pour consolider en tant que tableau, vous pouvez vous référer à votre question précédente Les valeurs distinctes de la requête Django fonctionnent mais je ne peux pas utiliser le résultat de la requête