SQL SELECT语句总结(一)

SQL SELECT语句总结(一),第1张

SELECT查询基本语法:

5. SELECT  COLUMN_LIST

1. FROM TABLE_NAME

2. WHERE

3. GROUP BY

4. HAVING

6. ORDER BY

7. OFFSET

8. FETCH

SELECT语句的执行顺序如上,上一步返回一个结果集,下一步 *** 作该结果集,然后返回新的结果集给再下一步,注意1是FROM,5是SELECT,6是ORDER BY。

这样就很好了解GROUP BY 和HAVING之间的关系了,先GROUP BY分组得出一个结果集,但是该结果集中的数据并不是我们都想要的,HAVING语句就是用来筛选这个结果集,来获得我们想要的结果。

SELECT DEPTNO, COUNT(*)

FROM EMP

GROUP BY DEPTNO

HAVING COUNT(*) >2

    AND AVG(SAL) <4000

1. 既然已经根据DEPTNO分组了,那在SELECT后,就应该有分组字段DEPTNO。

2. 如果只根据DEPTNO分组,那分组后的结果集,每行就是一个唯一的DEPTNO。

3. 在HAVING中,无论是COUNT(*)还是AVG(SAL)都是组的属性,COUNT(*)是每组中数据的行数,AVG(SAL)是每组的平均工资。

几个简单的基本的sql语句 选择:select * from table1 where 范围 插入:insert into table1(field1,field2) values(value1,value2) 删除:delete from table1 where 范围 更新:update table1 set field1=value1 where 范围 查找:select * from table1 where field1 like ’%value1%’ (所有包含‘value1’这个模式的字符串)---like的语法很精妙,查资料! 排序:select * from table1 order by field1,field2 [desc] 分组:select * from table1 group by field1 ORDER BY count(ShopId) LIMIT 20 (兼并排序分页) 总数:select count(*) as totalcount from table1 求和:select sum(field1) as sumvalue from table1 平均:select avg(field1) as avgvalue from table1 最大:select max(field1) as maxvalue from table1 最小:select min(field1) as minvalue from table1[separator] 查询去除重复值:select distinct * from table1 使用外连接 A、left outer join: 左外连接(左连接):结果集既包括连接表的匹配行,也包括左连接表的所有行。 SQL: select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c B:right outer join: 右外连接(右连接):结果集既包括连接表的匹配连接行,也包括右连接表的所有行。 C:full outer join: 全外连接:不仅包括符号连接表的匹配行,还包括两个连接表中的所有记录。

麻烦采纳,谢谢!


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10825507.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存