--给my_class表增加主键
alter table my_class add primary key(name);
--插入数据
insert into my_class
values('python1910','B409');
insert into my_class
balues('python1910','B510');
--主键冲突:更新
insert into my_class
values('python1910','B510')
--冲突处理
on duplicate key update
--更新教室
room='B510'
insert into my_class
values('python1907','B403');
--主键冲突:替换
replace into my_class
values('pythonb1907','A203');
replace into my_class
values('python1811','B407');
--复制创建表
create table my_copy like my_class;
--蠕虫复制
insert into my_copy select * from my_class;
--删除主键
alter table my_copy drop primary key;
insert into my_copy select * from my_copy;
--更新部分1811变成1911
update my_copy set name='python1911' wyere name='python1811' like 3;
--删除数据:限制记录数为5
delete from my_copy where name='python1903' limit 5;
给my_student表增加主键
alter table my_student modify id int primary key
auto_incremen;
--清空表:重置自增长
truncate my_student;
--select 选项
select * from my_copy
select all * from my_copy;
--去重
select distinct * from my_copy;
--向学生表插入数据
insert into my_student
values(null,'bc2020001','张三','男'),
(null,'bc2020002','李四','男'),
(null,'bc2020001','王五','男'),
(null,'bc2020001','赵六','女'),
(null,'bc2020001','小明','男');
--字段别名
select id, number as 学号,name as 姓名,
sex 性别 form my_student;
--多表数据源
select * from my_student,myclass;
--子查询
select * from (select * from my_student) as s;
--增高age年龄和height身高字段
alter table my_student add age tinyint unsigned;
alter table my_student add height tinyint unsigned;
--增加字段值:rand取得一个0到1之间的随机数,floor向下取整
update my_student set age=floor(rand()*20+20),height-floor(
rand()*20+170);
--找学生id为1,3,5的学生
select * from my_student where id=1 | | id=3 | | id=5; --逻辑判断
select * from my_student where id in(1,3,5); -- 落在集合中
--找身高在185到190之间的学生
elect * from my_student where height>=185 and height<=190;
elect * from my_student where height between 185 and 190;
elect * from my_student where height between 190 and 185;
select * from my_student where 1; -- 所有条件都满足
--根据性别分组
select * from my_student group by sex;
--分组统计:身高高矮,平均年龄,总年龄
select sex,count(*),max(height),min(height),avg(age),sum(
age) from my_student group by sex;
--修改id为4的记录,把年龄设置为NULL
update my_student set age=null where id=4;
select sex,count(*),count(age),max(height),min(height),avg(
age),sum(age) from my_student group by sex;
--修改id为1的记录,把性别设置为女
update my_student set sex='女' where id=1;
--nan nv
--倒序
select sex,count(*),count(age),max(height),min(height),avg(
age),sum(age) from my_student group by sex desc;
--删除班级表主键
alter table my_class drop primary key
auto_incremrnt;.
--给学生表增加一个班级表的id
alter table my_student add c_id int;
update my_student set c_id=ceil(rand()*4);
insert into my_student values(6,'bc20200006','小芳',
'女',18,160,2);
--多字段分组:先班级,后男女
select c_id, sex,count(*) from my_student group by
c_id,sex; -- 多字段排序
select c_id,sex,count(*),group_concat(name) from
my_student group by c_id,sex;