我得到了
django.db.utils.NotSupportedError: (1235, "This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'")
当我试着运行这个脚本时
class Command(NoArgsCommand):
def handle_noargs(self, **options):
survey_res = SurveyResults.objects.all()
for i in survey_res:
rescount = SurveyResults.objects.filter(pkey=i.pkey, partner_id=i.partner_id).count()
if rescount > 1:
objs = SurveyResults.objects.filter(pkey=i.pkey, partner_id=i.partner_id)[:1]
SurveyResults.objects.exclude(pk__in=objs).delete()
有什么解决办法吗。。? 我试图删除所有记录,除了最新的记录有两个共同的字段。在
你的MySQL版本不支持这些命令,所以你可以选择 要么使用不同版本的mySQL,要么不使用'IN',因为这看起来像 罪魁祸首。那么把最后一位改成:
这样,除了第一个返回的SurveyResults之外,您将删除所有的结果。当然,假设您的结果是按最新的排序的,因为正如您所指出的,您希望保留最新的。在
相关问题 更多 >
编程相关推荐