DQL 查询 约束

1,DQL查询语句
1,排序查 询
语法: order by子句
order by排序字段1排序方式1,排序字段2排序方式2…
排序方式:
ASC:升序,默认的。
DESC:降序。
注意:
如果有多个排序条件,则当前边的条件值一样时,才会判断第二条件。
2,聚合函数:将一列数据作为一个整体,进行纵向的计算。
SELECT COUNT 需要计算的列的名称 FROM student;(将一列数据作为一个整体,进行纵向计算)
SELECT MAX 需要计算的列的名称 FROM student; (计算最大的值)
SELECT MIN 需要计算的列的名称 FROM student; (计算最小的值)
SELECT SUM 需要计算的列的名称 FROM student; (计算总和)
SELECT AVG 需要计算的列的名称 FROM student; (计算平均值)
注意:聚合函数的计算,排除nu11值。
解决方案:
1.选择不包含非空的列进行计算
2. IFNULL函数
3,分组查询
语法: group by分字段
2.注意:
1.分组之后查询的字段:分组字段、聚合函数
2. where和 having的区别?
1. where在分組之前进行限定,如果不满足条件,则不参与分组。 having在分組之后进行限定,如果不满足结果,则不会被查询出来
2. where后不可以跟聚合函数, having可以进行聚合函数的判断。
4,分页查询
1,语法:1imit开始的案引,每页查询的条数;
2.公式:开始的索引=(当前的页码-1)*每页显示的条数
SELECT * FROM student LIMTT 0,3;(分页查询,更换0和3限定进行查询)
3.分页操作是一个“方言”
limit是一个mysQL"方言”
2,约束
概念:对表中的数据进行限定,保证数据的正确性、有效性和完整性。
分类:
1.主键约束: primary key
2,非空约束: not nul
3,唯一约束: unique
4.外键约束: foreign key
非空约束: not nul1
1.创建表时添加约束
CREATE TABLE stu(
id INT,
AME VARCHAR(20) NOT NUL – name为非空
);
2.创建表完后,添加非空约束
ALTER TABLE stu MODIFY NAME VARCHAR(20)NOT NULL;
3,刪除name的非空约束
ALTER TABLE stu MODIFY NAME VARCHAR ( 20 ) ;
1,注意
唯一约束: unique,值不能重复
2,创建表时,添加唯一约束
CREATE TABLE stu(
id INT,
phone number VARCHAR(20) UNIQUE–添加了唯一约束
);
注意mysql中,唯一约束限定的列的值可以有多个null
3,删除唯一约束
ALTER TABLE stu DROP INDEX phone _ number;
4, 在创建表后,添加唯一约束
ALTER TABLE stu MODIFY phone number VARCHAR ( 20 ) UNIQUE ;
主键约束: primary key
1, 注意
1,含义:非空且唯一
2,一张表只能有一个字段为主键
3,主键就是表中记录的唯一标识
2,创建表时,添加主键约束
create table stu(
d int primary key,–给id添加主键约束
name varchar ( 20 )
);
3,删除主键
错误 alter table stu modify id int
ALTER TABLE Stu DROP PRIMARY KEY;
4,创建完表后,添加主键
ALTER TABLE stu MODIFY id INT PRIMARY KEY;
5,自动增长:
1.概念:如果某一列是数值类型的,使用 auto-increment 可以来完成值得自动增长
2.在创建表时,添加主键约束,并且完成主键自増长
create table stu(
id int primary key auto increment,–给id添加主键约束
name varchar ( 20)
);
3,删除自动增长
ALTER TABLE stu MODIFY id INT;
4,添加自动增长
ALTER TABLE stu MODIFY id INT AUTO-INCREMENT;
外键约束: foreign key,让表于表产生关系,从而保证数据的正确性
1,在创建表时可以添加外键
语法:
create table表名(

外键列
constraint 外键名称 foreign key (外键列名称) references 主表名称 (主表列名称)
);
2,删除外键
ALTER TABLE表名 DROP FOREIGN KEY外键名称;
3,创建表之后,添加外键
ALTER TABLE 表名 ADD CONSTRAINT 外键名称 FOREIGN KEY (外键字段名称) REFERENCES 主表名称(主表列名称);
4,级联操作
1,添加级联操作
语法:ALTER TABLE 表名 ADD CONSTRAINT 外键名称 FOREIGN KEY (外键字段名称) REFERENCES 主表名称(主表列名称) ON UPDATE CASCADE ON DELETE CASCADE ;
2,分类
1,级联更新:ON DELETE CASCADE
2,级连删除:ON DELETE CASCADE

3,多表之间的关系

5,数据库的备份和还原

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值