MySQL基础查询与排序

SELECT语句

SELECT <列名>, FROM <表名>;

WHERE语句 : 从表中选取符合条件的数据

SELECT <列名>, …FROM <表名> WHERE <条件表达式>;

相关法则

星号()代表全部列的意思。 SQL中可以随意使用换行符,不影响语句执行(但不可插入空行)。 设定汉语别名时需要使用双引号(")括起来。
在SELECT语句中使用DISTINCT可以删除重复行。 注释是SQL语句中用来标识说明或者注意事项的部分。分为1行注释"–“和多行注释两种”/
*/"。

算术运算符

+,-,*,/

比较运算符

=, <>, <=, >, <=, <

逻辑运算符

NOT, AND, OR,
括号内的优先运行

聚合查询

COUNT, SUM, AVG, MAX, MIN
删除重复值 DISTINCT

COUNT函数的结果根据参数的不同而不同。COUNT()会得到包含NULL的数据行数,而COUNT(<列名>)会得到NULL之外的数据行数。
聚合函数会将NULL排除在外。但COUNT(
)例外,并不会排除NULL。
MAX/MIN函数几乎适用于所有数据类型的列。SUM/AVG函数只适用于数值类型的列。
想要计算值的种类时,可以在COUNT函数的参数中使用DISTINCT。
在聚合函数的参数中使用DISTINCT,可以删除重复数据。

分组

GROUP BY : 聚合键中包含NULL时,会将NULL作为一组特殊数据进行处理
GROUP BY的子句书写顺序有严格要求,不按要求会导致SQL无法正常执行,目前出现过的子句书写****顺序为:
1**.**SELECT → 2. FROM → 3. WHERE → 4. GROUP BY

常见错误:在使用聚合函数及GROUP BY子句时,经常出现的错误有:

①在聚合函数的SELECT子句中写了聚合健以外的列 使用COUNT等聚合函数时,SELECT子句中如果出现列名,只能是GROUP BY子句中指定的列名(也就是聚合键)。

②在GROUP BY子句中使用列的别名 SELECT子句中可以通过AS来指定别名,但在GROUP BY中不能使用别名。因为在DBMS中 ,SELECT子句在GROUP BY子句后执行。

③在WHERE中使用聚合函数 原因是聚合函数的使用前提是结果集已经确定,而WHERE还处于确定结果集的过程中,所以相互矛盾会引发错误。 如果想指定条件,可以在SELECT,HAVING(下面马上会讲)以及ORDER BY子句中使用聚合函数。

为聚合结果指定条件

用HAVING得到特定分组, HAVING子句用于对分组进行过滤,可以使用数字、聚合函数和GROUP BY中指定的列名(聚合键)

对查询结果进行排序

ORDER BY
在ORDER BY中可以使用别名,但是在GROUP BY中不能使用别名

分页函数

LIMIT
LIMIT 2 检索前两行
LIMIT 3,2 从第四行开始,取两行(LIMIT是从0开始计数)
LIMIT 4,6 从第四行开始,往后取6行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Weidong He.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值