前言
数据库名称可以为【schoolDB】,字符集【utf8】,排序规则【utf8_general_ci】。
1、建表语句——DDL
CREATE TABLE `student` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '学号',
`createDate` datetime DEFAULT NULL COMMENT '创建时间',
`userName` varchar(20) DEFAULT NULL COMMENT '用户名',
`pwd` varchar(36) DEFAULT NULL COMMENT '密码',
`phone` varchar(11) DEFAULT NULL COMMENT '手机号',
`age` tinyint(3) DEFAULT NULL COMMENT '年龄',
`sex` char(2) DEFAULT NULL COMMENT '性别',
`introduce` varchar(255) DEFAULT NULL COMMENT '简介',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8;
2、插入语句——DML
insert into student values(0,'2024-02-25 10:00:00','刘德华','123456',
'15612345678',62,'男','永远的男神,爱你一万年,爱你经得起考验。');
insert into student values(0,'2024-02-25 10:00:00','刘青云','123456',
'15612345678',65,'男','真正的演员,好角色用心演绎。');
insert into student values(0,'2024-02-25 10:00:00','周星驰','123456',
'15612345678',61,'男','所有的电影都没有对爱情有过轻视。');
insert into student values(0,'2024-02-25 10:00:00','张翰','123456',
'15612345678',32,'男','一起坐死在流星雨下。');
insert into student values(0,'2024-02-25 10:00:00','王祖贤','123456',
'15612345678',27,'女','你再美能美过王祖贤吗?');
insert into student (userName,age,introduce)values('刘亦菲',37,'神仙姐姐');
3、基础查询语句——DQL
# 1、基础查询
select * from student;
# 2、分列匿名以及筛选数据查询
select userName as '姓名',age 年龄,introduce '简介'
from student
where pwd is not null;
# 3、去重查询
select distinct sex '性别类型' from student;
# 4、排序查询
select userName as '姓名',age 年龄,sex '性别',introduce '简介' from student ORDER BY age desc;
# 5、分页查询-limit这个是重载函数
# 1个参数的limit用法是显示多少条信息
select * from student LIMIT 2;
# 2个参数,参数1:从第N条开始查询,N的起始坐标为0条。参数2:查询条数
select * from studnet limit 4,2;
4、查询语句——DQL
SELECT * FROM `student` where userName like '张_';
SELECT * FROM `student` where userName like '刘%';
SELECT * FROM `student` where pwd is null;
SELECT * FROM `student` where pwd is not null;
SELECT * FROM `student` where age between 30 and 40;
SELECT * FROM `student` where createDate between '2024-02-21 00:00:00' and '2024-02-23 00:00:00';
SELECT * FROM `student` where userName in('张翰','刘德华','刘亦菲');
5、聚合函数
select count(*) from student where pwd is not null;
select max(age) '最大年龄',min(age) '最小年龄' from student;
select avg(age) '平均年龄' from student;
select sum(age) '总年龄' from student;
select avg(age) '平均年龄',sum(age)/(select count(*) from student) 'sum计算平均年龄' from student;