MySQL学习Day03

唯一约束——unique

加上此约束的属性不能有相同的值,但是可以有多个NULL,这个NULL是关键字,不可以加在引号内,加在引号内也不会生效。
唯一约束可能会影响排序

默认值约束——default

在创建表时,给某一属性一个default属性和一个默认值,在插入数据的时候,可以直接输入default,就会插入默认值。
可以直接使用default,即使不再创建表时给属性,这时default就会显示为NULL。

外键约束——forrign references

在需要绑定的属性后面必须要加主键约束,
外键约束语法:
foreign key(familyId) references family (fid)
在创建表的时候加入,必须写在外键约束内
外键一定要与绑定的主键类型一致,外键的内容一定可以在主键里面找到

自动增长——AUTO_INCREMENT

一般加在id属性后面,插入数值时直接写上NULL即可,就会自定实现id的增长

简单查询

1.查询特定的列

练习:查询所有员工的编号和姓名select eid,ename from empty;

练习:查询出所有员工的姓名,性别,生日,工资
select ename,sex,birthday,salary from empty;
查询出来的表格顺序会按照上列顺序显示出来。

2.查询所有列

select*from empty;

3.别名使用

练习:查询出所有员工的姓名,生日,工资,使用中文别名
as是一个关键字,可以省略只用一个as或者一个也不需要,
只保留空格即可
select eid as 编号,ename 姓名,birthday 生日 from empty;

练习:查询出所有员工的姓名和工资,使用1个字母作为别名
select ename N,salary S from empty;

4.显示不同记录

练习:查询员工分布在哪个部门
selext distinct deptId from empty;

5.查询时执行计算

练习:查询出所有员工的姓名及其年薪
select ename 姓名,salary*12 年薪 from empty;

练习:假设每个员工的工资增长1000,年终奖20000,查询所有员工的姓名及其年薪,使用汉字别名
select ename 姓名,(salary+1000)*12+20000 年薪 from empty;

6.查询的结果集排序

不加排序规则,默认按照升序排列

  • 升序查询:select*from dept order by did asc;
  • 降序查询:select*from dept order by did desc;

#desc describe 描述,查询列结构使用
#desc descendant 降序的使用

练习:查询所有的员工,结果集按照工资的降序排列
select *from empty order by salary desc;

练习:查询所有的员工,结果集按照年龄从大到小排列
select*from empty order by birthday asc;

练习:查询所有的员工,结果集按照姓名的升序排列
select*from empty order by ename asc;

练习:查询所有的员工,结果集按照工资的降序排序,如果工资相同按照年龄从大到小排列
select*from empty order by salary desc,birthday asc;

练习:查询所有的员工,结果集中女员工显示在前,如果性别相同按照姓名升序排列
select*from empty order by sex,ename;

7.条件查询

练习:查询所有的男员工
select*from empty where sex=1;

posted @ 2021-01-19 20:37  jiew-c  阅读(104)  评论(0)    收藏  举报