Friday, July 30, 2010

Re: values with distinct not working as expected

You don't need order_by to get distinct values per se, but in this
case you need to put it in to override whatever default ordering you
have on your model (since any order_by fields will be included in the
query and thwart your distinct()).

On Jul 30, 3:52 am, tuxcanfly <tuxcan...@gmail.com> wrote:
> Thanks, that works!
>
> But I don't understand why I should order_by to get distinct values.
>
> On Jul 29, 3:59 pm, Subhranath Chunder <subhran...@gmail.com> wrote:
>
>
>
> > If you don't want to uniquify yourself, then why not simply do:
> > User.objects.values('username').order_by('username').distinct()
>
> > or, going the way that were already heading, it would be:
> > Visitor.objects.values('user__username').order_by('user__username'').distin ct()
>
> > Thanks,
> > Subhranath Chunder.
>
> > On Thu, Jul 29, 2010 at 2:29 PM, tuxcanfly <tuxcan...@gmail.com> wrote:
> > > I have this:
>
> > > class Visitor(models.Model):
> > >    user = models.ForeignKey(User)
> > >    ......
> > >    ......
>
> > > I'm trying to get the distinct usernames, so I did this:
>
> > >    Visitor.objects.values("user__username").distinct()
>
> > > But this stil gives me duplicate usernames. Of course I could use a
> > > flat values_list  and uniquify the result, but...
>
> > > --
> > > You received this message because you are subscribed to the Google Groups
> > > "Django users" group.
> > > To post to this group, send email to django-users@googlegroups.com.
> > > To unsubscribe from this group, send email to
> > > django-users+unsubscribe@googlegroups.com<django-users%2Bunsubscribe@google groups.com>
> > > .
> > > For more options, visit this group at
> > >http://groups.google.com/group/django-users?hl=en.

--
You received this message because you are subscribed to the Google Groups "Django users" group.
To post to this group, send email to django-users@googlegroups.com.
To unsubscribe from this group, send email to django-users+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/django-users?hl=en.

No comments:

Post a Comment