Reputation: 99
I want to make a query that performs the same task as the my sql query given below
SELECT
max(date),
business_id,
visits
FROM
data_traffic
where
business_id
IN (
SELECT
competitor_id
FROM
data_business_competitors WHERE business_id = 868
)
order by
date desc
I have written a query given below but it does not gives the visits
TrafficData.objects.filter(business_id__in=competitors).values('business_id').annotate(max_date=Max('date'))
Upvotes: 1
Views: 44
Reputation: 12548
If I understood you correctly, this may do it
TrafficData.objects\
.filter(business_id__in=competitors)\
.annotate(max_date=Max('date'))\
.order_by('-max_date')\
.values('business_id', 'visits', 'max_date')
Upvotes: 2