MySQL 随笔总结

mysql基本:

主键:唯一一个识别一条记录的字段;

自增:某个字段不需要手动填写数据,而是通过系统分配的整理,每一条数据分配的值都是前一条数据的增量;

系统分配的整数:每一条数据分配的值都是前一条数据的增量;

非空:字段设置为非空时,填写的数据时要求该字段为必填项目;

默认值:字段不写数据时会默认为数据;

基本语法

select * conctatd.adress_list where tel not like 1%;

select *  where =固定语法;not like 1%=不以1开头

selsct avg()from____; avg:select avg(column) from table 统计表中某列数值的平均值(一般是数字类型),可以搭配group by语句等;

selsct  count()from____;count:求个数,count()里面也可以跟某个字段,特指某个字段的行数;

selsct  sum()from____;sum:求和,SUM 只能与数字列一起使用。空值将被忽略;

selsct  max()from____;max:最大  

selsct  min()from____;min:最小

group by :GROUP BY 是分组查询, 一般 GROUP BY 是和 聚合函数配合使用;

order by : 按照递增或递减顺序在指定字段中对查询的结果记录进行排序;

desc  :取反

实题解析(详细表格资料请自行到网上下载):

1:select后面跟着写sname,ssex,class然后from STUDENT就可以查询到这三列;

2:重点在于不可以重复所以要使用分组(group by),查询teacher里的depart列然后分组;

4:因为要提取60到80之间的的成绩所以要><号中间用and用来连接,或者使用between 60 and 80;

5:这道题主要是想写出3个成绩的记录,所以用in(85,86,87);

6:这种情况要使用or来表示或者;

7:先使用order by 来进行排序,然后使用desc变成降序;

8:先将有score找到再跟7一样只是一个升序一个降序,

9:使用count()来进行统计人数,count会在select后面写;

10:使用子查询的方法,先将最高分的人用max()查找出来再将学号和课程号找出;

11:平均分要使用avg()来查询

12:先在成绩里求出平均分然后找到以3开头的进行分组

12,13:having 主要用于分组后的条件过滤,未分组的用 where,如果用了group by 那么后面的过滤条件就不能再用where了,要用having

原文地址:https://www.cnblogs.com/031148gyb/p/6387016.html