请帮帮我!如何将此SELECT hotel_id FROM hotelrooms GROUP BY hotel_id HAVING COUNT(room_id) < 20
转换为Django ORM?
型号:
class hotelrooms(models.Model):
room_id = models.IntegerField()
hotel_id = models.IntegerField()
price = models.IntegerField()
您可以通过以下方式查询:
HotelRoom.objects.values('hotel_id').annotate(
nhotel=Count('room_id')
).filter(nhotel__lt=20).order_by('hotel_id')
话虽如此,看起来这些应该是**ForeignKey
**s [Django-doc]。 ForeignKey
引用另一个模型,因此可以例如强制执行引用完整性。