MySql数据库教程三 进阶篇 查询 分页 约束

版权声明:记录上工作中的一些问题 https://blog.csdn.net/m0_37583098/article/details/85336756

分组查询

将查询结果按照1个或多个字段进行分组,字段值相同的为一组

关键字:group by + group_concat() 

根据性别进行分组:SELECT gender,GROUP_CONCAT(name) from employee GROUP BY gender;

group by + 聚合函数

查询每个部门的部门名称和每个部门的工资和:SELECT department,SUM(salary) FROM employee GROUP BY department;

group by + having:用来分组查询后指定一些条件来输出查询结果

查询工资总额大于9000的部门:SELECT department,SUM(salary) FROM employee GROUP BY department HAVING SUM(salary)>9000;

LIMIT分页

Limit 参数1:从哪一行开始查,参数2:一共要查几行

select * from 表名 limit 0,3;

从0开始后3个

数据的完整性

1.实体完整性:标识每一行数据不重复。行级约束

主键约束(primary key) 

每个表中要有一个主键:数据唯一,且不能为null

CREATE TABLE 表名(字段1 数据类型, 字段2 数据类型,primary key(要设置主键的字段));

唯一约束(unique)

指定列的数据不能重复,可以为空值

CREATE TABLE 表名(字段名1 数据类型 字段2 数据类型 UNIQUE);

 自动增长列(auto_increment)

指定列的数据自动增长,即使数据删除,还是从删除的序号继续往下

CREATE TABLE 表名(字段名1 数据类型 PRIMARY KEY AUTO_INCREMENT ,字段2 数据类型 UNIQUE);

2.域完整性:限制此单元格的数据正确

非空约束(not null):CREATE TABLE 表名(字段名1 数据类型 PRIMARY KEY AUTO_INCREMENT ,字段2 数据类型 UNIQUE not null);

 默认值约束(default) :CREATE TABLE 表名(字段名1 数据类型 PRIMARY KEY AUTO_INCREMENT ,字段2 数据类型 UNIQUE not null default '男');

参照完整性

是指表与表之间的一种对应关系

创建表时,设置外键,设置外键的为子表:

CREATE TABLE score(
sid INT,
score DOUBLE,
CONSTRAINT fk_stu_score_sid FOREIGN KEY(sid) REFERENCES student(sid));

猜你喜欢

转载自blog.csdn.net/m0_37583098/article/details/85336756
今日推荐