5条回答 默认 最新
- CSDN专家-微编程 2021-06-29 15:03关注
从你的sql语句中可以看出,你的sql基础有点差,建议先去学一下基础
明显的错误如下:
1.使用group by后面跟字段名 以该字段分组查询,所以select不用 * 而是group by的字段名,group by后面不跟条件
2.left join 是左连接 用法以a,b表为例 select....from a left join b on a.xx=b,xx a.xx和b.xx是相同等价字段
3.distinct 是去重,用法是放在 select后面 字段名前面,比如 select distinct name from 表a,代表查询名字,名字各不相同
3.顺序问题,where不能放在group by后面,而是having放在group by后面,having和where有相同的功能,不同在于位置不同
sql书写顺序:select --> from --> where --> group by --> having --> order by
sql执行顺序:from --> where --> group by --> having --> select --> order by
from: 需要从哪个数据表检索数据 。
where: 过滤表中数据的条件。
group by: 如何将上面过滤出的数据分组。
having: 对上面已经分组的数据进行过滤的条件。
select: 查看结果集中的哪个列,或列的计算结果。
order by: 按照什么样的顺序来查看返回的数据。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用 1
悬赏问题
- ¥15 微服务假死,一段时间后自动恢复,如何排查处理
- ¥15 cplex运行后参数报错是为什么
- ¥15 之前不小心删了pycharm的文件,后面重新安装之后软件打不开了
- ¥15 vue3获取动态宽度,刷新后动态宽度值为0
- ¥15 升腾威讯云桌面V2.0.0摄像头问题
- ¥15 关于Python的会计设计
- ¥15 聚类分析 设计k-均值算法分类器,对一组二维模式向量进行分类。
- ¥15 stm32c8t6工程,使用hal库
- ¥15 找能接spark如图片的,可议价
- ¥15 关于#单片机#的问题,请各位专家解答!