SQL典型三段式代码
# 第一段:select段,选择字段及构造字段,其中构造字段常用 count sum round +-*/等函数及运算表达式
select
university,
difficult_level,
round(count(qpd.question_id) / count(distinct qpd.device_id), 4) as avg_answer_cnt
# 第二段:from段,选择表及合并表,合并表的依据为表中相同字段,合并方式有 inner join(默认方式)/left join/right join/full join
from question_practice_detail as qpd
inner join user_profile as up
on up.device_id = qpd.device_id and up.university = '山东大学'
inner join question_detail as qd
on qd.question_id = qpd.question_id
# 第三段:数据操作段,含数据的 分组/排序/筛选/取指定行数 等操作
group by difficult_level
总结
根据这种三段式的思维模式,可以非常顺畅的编写出目标SQL,完成数据提取任务;应该有意识锻炼这种思维,熟能生巧。