【发布时间】:2016-06-24 20:58:46
【问题描述】:
是否可以使用 Django ORM 将子查询结果与标量值进行比较?我很难转换这个:
SELECT payment_subscription.*
FROM payment_subscription payment_subscription
JOIN payment_recurrent payment_recurrent ON payment_subscription.id = payment_recurrent.subscription_id
WHERE
payment_subscription.status = 1
AND (SELECT expiration_date
FROM payment_transaction payment_transaction
WHERE payment_transaction.company_id = payment_subscription.company_id
AND payment_transaction.status IN ('OK', 'Complete')
ORDER BY payment_transaction.expiration_date DESC, payment_transaction.id DESC
LIMIT 1) <= ?
主要有以下几点:
- 子查询的标量值与任意参数的最后一次比较。
- 子查询和带有公司ID的外部查询之间的连接
【问题讨论】:
标签: python mysql django database