将指定DELETE SQL查询转换为Django ORM查询语句
将SQL转换为Django ORM实现
原SQL语句的功能是:删除指定订单下、未关联任何订单菜品的档口订单记录。根据模型关系,对应的Django ORM代码如下:
from your_app.models import OrderStall # 替换<order-id>为实际的订单ID值 OrderStall.objects.filter( order_id=<order-id>, ordermenu__isnull=True ).delete()
逻辑说明
order_id=<order-id>:筛选属于目标订单的OrderStall记录,对应SQL中的os.order = <order-id>ordermenu__isnull=True:筛选没有关联OrderMenu记录的OrderStall,Django ORM会自动将其转换为NOT EXISTS子查询,和原SQL的逻辑完全一致
内容的提问来源于stack exchange,提问作者Daniel Christian Mandolang
相关产品推荐
相关产品推荐

