|
如标题,我们在做基础查询时,离不开这套语句框架,然后根据自己的需求进行语句扩展,包括纳入子查询,复杂运算等等,具体如下:
SELECT 字段,聚合函数(字段)
FROM 表名
WHERE 条件表达式
GROUP BY 分组字段
HAVING 条件表达式
ORDER BY 排序
LIMIT 表格前几行数据(必须和ORDER BY搭配使用)
这里面可能比较容易混淆的是WHERE语句和HAVING语句,正如在框架中出现的顺序,WHERE函数是在查询结果输出之前进行条件筛选,而HAVING是在查询结果输出之后进行条件筛选,HAVING可以操作聚合函数,这是WHERE不可以实现的,我们用一个案例来看一下:
案例:我们想看平均成绩高于80的学生ID(s_id字段)
如果筛选条件用WHERE,就会出现错误:

错误查询结果
存在聚合函数的条件操作,SQL语句应该写成:

从表格可以看出,平均成绩大于80分的学生主要是01、05、07 |
|