Django returns duplicates but same query from dbshell return only one record
I dont understand why Django returns duplicates in code below, can
somebody explain it? thanks.
qs = PropTelephone.objects.filter(reference=91811,
tel_number__isnull=False).exclude(tel_number='').values_list('tel_number',
flat=True).distinct()
print qs
[u'0410224291', u'0410224291']
print qs.query
SELECT DISTINCT `PROP_TELEPHONE`.`TEL_NUMBER` FROM `PROP_TELEPHONE` WHERE
(`PROP_TELEPHONE`.`TEL_NUMBER` IS NOT NULL AND
`PROP_TELEPHONE`.`REFERENCE` = 91811 AND NOT
(`PROP_TELEPHONE`.`TEL_NUMBER` = '' ))
query launched from dbshell returns only one record
+-------------------------------+
| TEL_NUMBER |
+-------------------------------+
| 0410224291 |
+-------------------------------+
so why django returns for such query two same records? ofcourse in DB
exists two records, with different values in other columns. but distinct
for column tel_number should return only one IMHO.
No comments:
Post a Comment