mysql数据库学习(第十二篇) - 数据高级操作(2)

更新数据(限制记录数)

mysql数据库学习(第十二篇) - 数据高级操作(2)


举例说明;UPDATE my_copy SET NAME='32' WHERE 1 = 1 LIMIT 3

只更新一部分,头几名啊这些的


删除数据【限制记录数】


mysql数据库学习(第十二篇) - 数据高级操作(2)


清空表,重置自增长

Tips:自增长又从1开始

Truncate 表名 。--表被删除后,又重新创建。从而达到清空表,重置自增长

TRUNCATE my_copy


查询数据


mysql数据库学习(第十二篇) - 数据高级操作(2)

mysql数据库学习(第十二篇) - 数据高级操作(2)


字段别名

mysql数据库学习(第十二篇) - 数据高级操作(2)


数据源

单表查询:select * from 表名


多表查询:select * from 表1 ,表2 where 表1.id = 表2.id


子查询:select * from (select 字段 from 表) as 别名 -- 必须加上别名,否则报错。

这个别名相当于表名,里面的数据是子查询查询出来的数据 , 即select * from 别名;

Where子句(直接从磁盘获取数据时就进行判断的条件)

mysql数据库学习(第十二篇) - 数据高级操作(2)


Group by(意义是为了统计数据)

注意:分组会自动排序,他会根据group by 字段 中的字段 进行升序排序!

Select * from 表名 group by 字段1, 字段2.

–先根据字段1排序,然后在根据字段2排序!

mysql数据库学习(第十二篇) - 数据高级操作(2)


Group_concat(字段名称)

mysql数据库学习(第十二篇) - 数据高级操作(2)


举例: SELECT GROUP_CONCAT(`name`) FROM my_primary GROUP BY sex;

所有性别为男的放在一组,名字以逗号分开;女的也是!


mysql数据库学习(第十二篇) - 数据高级操作(2)


回溯统计

mysql数据库学习(第十二篇) - 数据高级操作(2)

mysql数据库学习(第十二篇) - 数据高级操作(2)


多字段分组统计

mysql数据库学习(第十二篇) - 数据高级操作(2)


按照班级,性别排序

(1)、先按照班级,然后性别,成为第一组

(2)、统计一班的女生,然后是男生,没有男生,所以不统计男生的,所以统计为全女生

(3)、统计二班的女生,然后统计二班的男生,然后统计二班的总人数

。。。。。。。

(end)最后统计所有班级的所有人数

mysql数据库学习(第十二篇) - 数据高级操作(2)


Having 子句

与where子句一样,也是进行条件判断


1、

mysql数据库学习(第十二篇) - 数据高级操作(2)


因为where是在磁盘读出数据到内存时就判断了,而having是在内存中才进行处理的。所以,统计的话,那必须是数据都读取出来了,都在内存了,所以此时可以用统计函数了。


mysql数据库学习(第十二篇) - 数据高级操作(2)


Select 字段 as 别名 from 表名 group by 字段2 having 别名 = ‘值’

举例:SELECT `name`, `sex` AS '性别' FROM my_primary GROUP BY sex HAVING 性别='男'


Order by 子句

mysql数据库学习(第十二篇) - 数据高级操作(2)


多字段排序: Order by 字段1 [desc / asc], 字段2 [desc / asc]


Limit子句

1. 限制长度(数据量)

Select * from 表 limit 3;

2. 限制起始位置,数量 : limit x,y

Select * from 表 limit 2,5 --一般用于分页


分享到:


相關文章: