创建一个 表
create table student(
id int(10) not null unique auto_increment primary key,
name varchar(30),
sex varchar(4),
yuanxi varchar(50),
zhuzhi varchar(50)
);
# 自增怎么需要 写id 了
insert into student values(1,'张老1', '男','计算机系', '北京市海淀区');
insert into student values(2,'张老2', '男','中文系', '上海海淀区');
insert into student values(3,'张老3', '男','英语系', '广州海淀区');
insert into student values(4,'张老4', '女','体育系', '声震海淀区');
insert into student values(5,'张老5', '男','计机系', '杭州海淀区');
insert into student values(6,'张老6', '男','计算机系', '南京海淀区');
# ======= == 下边是 外键 ==========
create table chegnji(
id int(10) not null unique primary key auto_increment,
name varchar(50), 名字
fen int(10), 分数
stu_id int, id 关联 id
foreign key(stu_id) references student(id) 外键
);
# ===========插入============
insert into chengji values(1,'小崔',90,1);
insert into chengji values(2,'小白',91,2);
insert into chengji values(3,'小红',92,3);
insert into chengji values(4,'小黄',93,4);
insert into chengji values(5,'小率',94,1);
3.查询student表的所有记录
select * from student;
4 查询表结构
desc + 表名
4.查询student表的第2条到4条记录
select * from student limit 1,3;
select * from student where id<1 and id >5; 怎么是空集???
5.从student表查询所有学生的学号(id)、姓名(name)和院系(department)的信息
select id,name from student;
6.从student表中查询计算机系和英语系的学生的信息
select * from student where yuanxi in('计算机系','英语系');
7.从student表中查询年龄18~22岁的学生信息
select * from student where sex=('男');
8.从student表中查询每个院系有多少人
院系:(根据院系 分组排序)
select yuanxi,count(id) from student group by yuanxi;
分类汇总。
select sex as sum from '男' group by sex;
1、单列排序
select * from student order by id desc;
什么不加默认升序,降序后面接"DESC"即可。
2、多列排序
select * from student order by id,name desc;
首先按`id`字段排序,若`id`相等,则按name排序。
3, 自定义排序
select * from order by field('id',3,2,4,1,5), name desc;
使用"FIELD()"函数,可指定顺序。
9.从score表中查询每个科目的最高分
select name,max(fen) from chengji group by name;