MySql学习及入门
mysql
安装mysql及Navicat for MySQL
创建测试表TEACHER(教师表)、COURSE(课程表)
TEACHER:
| TNO | 教工号 |
| TNAME | 教师姓名 |
| CNO | 课程号 |
| SAL | 工资 |
| DNAME | 所在系 |
| TSEX | 性别 |
| AGE | 年龄 |

COURSE:
| CNO | 课程号 |
| CNAME | 课程名 |
| TIME | 课时 |
| SCOUNT | 人数 |
| CTEST | 考试时间 |

SLECT查询语句
- 查询所有教师的姓名信息

- 查询所有教师的姓名信息和工资情况

通配符*
- 可以匹配表中所有行,但是建议慎用,以免占用过多资源
DISTINCT去除重复信息
- 查询所有教师的姓名信息,
去除重复信息

ORDER BY按照列名排序
- 查询所有教师的姓名信息和工资情况,并按照
工资排序

DESC降序
- 查询所有教师的姓名信息和工资情况,并按照工资
降序排序

WHERE定义搜索条件
- 查询所有
是男性、所在系不是计算机且工资大于900的教师的姓名信息、所在系和工资情况

NULL值判断
- 查询所有
工资不为null的教师的姓名信息、所在系和工资情况,并按照工资降序排序

OR条件查询
- 查询所有
性别为男性或年龄大于46岁的教师的姓名信息、性别和年龄信息

- 查询所有所在系为'数学'或'生物'或'计算机'的教师的姓名信息和所在系信息

- OR真值表
| 表达式1 | 表达式2 | 结果 |
|---|---|---|
| TRUE | TRUE | TRUE |
| TRUE | FALSE | TRUE |
| TRUE | NULL | TRUE |
| FALSE | FALSE | FALSE |
| FALSE | NULL | NULL |
| NULL | NULL | NULL |
- AND运算符优先级高于OR
IN条件查询
- 查询所有所在系为'数学'或'生物'或'计算机'的教师的姓名信息和所在系信息

BETWEEN范围查询
- 查询所有
工资在1000到1400范围内的的教师的姓名信息和工资信息

LIKE模糊查询
- 查询所有
课程名是以'计算机'开头的课程

- 查询所有
课程名是以'计算机'开头及'基础'结尾的课程

- 查询所有
课程名是为'计算机XX'的课程

- 只有CHAR、VARCHAR和TEXT类型的数据才能用LIKE运算符和通配符
AS取别名
- 查询所有的课程号及课程名信息
(课程名重命名为INFO)

- 查询所有的课程号、课程名及课时大于30的课时信息

CONCAT拼接
- 查询所有的课程号及课程名信息
拼接并重命名INFO信息

CAST转换数据结构
- 查询所有的课程号、课程名及考试时间信息转为7位字符串重命名为CTESTSTR

CONVERT转换数据结构
- 查询所有的课程号、课程名及考试时间信息转为7位字符串重命名为CTESTSTR

SUM()求和函数
- 求所有课时总和

COUNT()计数函数
- 统计课时次数

MAX()最大值函数
- 求课时最大值

MIN()最小值函数
- 求课时最小值

AVG()均值函数
- 求课时平均值

- 求课时平均值并取整

GROUP BY组合查询
- 按照性别分组查询每组的教师工资平均值信息

- 按照所在系及性别分组查询所在系及性别信息

ROLLUP扩展
- 按照所在系及性别分组查询所在系及性别信息并扩展

HAVING
- 按照所在系分组、统计次数且筛选所有次数次数大于等于2的所在系信息


浙公网安备 33010602011771号