【发布时间】:2021-07-06 09:05:39
【问题描述】:
select
l.student_id,
SUM(l.sum_result)
FROM
(
SELECT
w.student_id,
w.subject_id,
r.total as sum_result
from
Student w
INNER JOIN (
SELECT
COUNT(r.id) as total,
r.subject_fk_id
from
Result r
GROUP BY
r.subject_fk_id
) r ON w.subject_id = r.subject_fk_id
) l
GROUP BY
student_id
The tables are:
Student
-------------
-> id(PK)
->student_name
->student_email
Subject
--------------
-> id(PK)
-> subject_name
Results
---------------
->id (PK)
->subject_fk(FK to subject table)
->date
学生和学科有一个多对多表
Student_Subject
->id(PK)
->Student_id(FK)
->Subject_id(FK)
我想将此 SQL 查询转换为 Django ORM 我需要检索学生的结果总数。我需要在 Django 中编写这个查询 没有 for 循环的 ORM。提前谢谢你
【问题讨论】:
标签: sql django join orm django-orm