我试图弄清楚如何在 django 模型查询中使用 IN 关键字。
我试图替换:
db = database.connect()
c = db.cursor()
c.execute("SELECT MAX(Date) FROM `Requests` WHERE UserId = %%s AND VIN = %%s AND Success = 1 AND RptType in %s" % str(cls.SuperReportTypes), (userID, vin))
有了这个:
myrequests = Request.objects.filter(user=userID, vin = vin, report_type in cls.SuperReportTypes)
myrequests.aggregate(Max('Date'))
我得到一个:
SyntaxError: non-keyword arg after keyword arg (<console>, line 1)
当我删除结尾"report_type in cls.SuperReportTypes"
时,查询功能正常。
我认识到在管理结果集的查询之后有一种方法可以执行此操作,但我希望以 MYSQL 执行执行的方式处理此问题。