Molla
Molla

Reputation: 13

how to extract only day from timestamp in Django

I want to get a specific date like "8" out of (2021-8-3) but it's showing like this image

how can I extract the specific date?

 usertime = User.objects.filter(groups__name = 'patient').values('date_joined').annotate(date_only=Cast('date_joined', DateField()))

Upvotes: 0

Views: 2029

Answers (1)

Jyothi S
Jyothi S

Reputation: 161

from django.db.models import F, Func,Value, CharField

usertime = (User.objects.filter(groups__name = 'patient').values('date_joined')
            .annotate(date_only=Func(
                F('date_joined'),
                Value('MM'),
                function='to_char',
                output_field=CharField()
            )
                     ).values('date_only'))

Try this, got a reference from @Yannics answer at: https://stackoverflow.com/a/60924664/5804947

you can further use YYYY / DD for years/date respectively under the Value field and works fine when the PostgreSQL database is used.

ANOTHER METHOD

from django.db.models.functions import Extract
usertime = User.objects.filter(groups__name = 'patient').values('date_joined').annotate(date_only=Extract('date_joined', 'month'))

Upvotes: 1

Related Questions