复制表结构和数据
复制已有表结构
# create table 目标数据库.新表名 like `被复制的表名`;$ create table mydb1.goods1 like `good`;
复制已有表数据
将已有表数据复制到目标表 , 目标表需要与已有表结构完全一样
# insert into 目标数据库.新表名 select * from `被复制的表名`;$ insert into mydb1.goods1 select * from `good`;
清空数据
# truncate table 表名;$ truncate table good;
查询时去除重复记录
# SELECT DISTINCT 字段名 FROM 表名$ SELECT DISTINCT student_code FROM sc
排序与限量
排序
- 单字段排序
按照一个指定字段进行排序
# ASC 升序 , DESC 降序 默认 ASC# SELECT 字段名 FROM 表名 ORDER BY 排序字段 排序规则$ SELECT * FROM sc ORDER BY id DESC
- 多字段排序
根据多个条件对查询数据进行排序 , 先按照规则一排序出结果 , 然后再使用规则二排序 以此类推
# SELECT 字段名 FROM 表名 ORDER BY 字段一 排序规则一 , 字段二 排序规则二$ SELECT * FROM sc ORDER BY student_code DESC , fraction DESC
限量
指定查询记录数量
# SELECT 字段名 FROM 表名 ORDER BY 排序字段 排序规则 LIMIT 最大查询记录数量$ SELECT * FROM sc ORDER BY fraction DESC LIMIT 1# 偏移量# SELECT 字段名* FROM 表名 ORDER BY 排序字段 排序规则 LIMIT 从第x条开始,取n条数据$ SELECT * FROM sc ORDER BY fraction DESC LIMIT 0,3
分组与聚合函数
分组统计
# 根据 student_code 进行分组(相同值为一组),查出fraction最大值(每组中的最大值)$ SELECT student_code,MAX(fraction) FROM sc GROUP BY student_code
$ SELECT student_code,GROUP_CONCAT(id),GROUP_CONCAT(fraction) FROM sc GROUP BY student_code
多分组统计
- 回溯统计
在根据指定字段分组后 , 系统又自动对分组的字段向上进行了一次新的统计 , 并产生一个新的统计数据
# 对统计结果再次按照上次统计的规则统计$ SELECT student_code,GROUP_CONCAT(id),GROUP_CONCAT(fraction) FROM sc GROUP BY student_code WITH ROLLUP
- 统计筛选
分组后可以使用 HAVING 对分组进行条件筛选 , 与WHERE 功能相同
