MySQL学习记录(第二周)20211101-20211107
2021年11月1日
- alter table chapter8 add remark varchar(100);#增加一列remar
- update chapter8 set remark='无特殊记录';#将remark列填上无特殊记录
- select * from chapter8;
- 这几天要写月报,比较忙可能看书来不及,但是一定要坚持,总有一天我要让做月报这件事变得轻松一些。
- update chapter8 set remark='加油!' order by sales limit 3;
2021年11月2日
- 抽从第二到第五的写法:limit 4 offset 1;
- 抽排在第4位和第5位的:limit 2 offset 3;
- 写语句的顺序是select-from-where-group by-having-order by,
- 但是实际上执行的顺序是from-where-group by-having-select-order by。
2021年11月3日
- 执行delete from chapter8 只是删除了记录,并不删除表的列结构,删除结构使用drop table。
- delete from chapter9_1;在safe update mode需要用where that uses a key column
- drop table chapter9_1;在safe update mode模式还是可以删除的
- 条件删除相当于用delete代替select,在有条件的删除之前先用create table chapter9 select * from chapter8;命令创建一个表。delete from chapter9 order by sales desc limit 4;删除销售排前4的人。
- 到周末才能把手里的事弄完,有时间学sql,慢一点没关系,但不能贪多、贪快,坚持住。
2021年11月4日
- order by 可以根据多条件排序,可以是多条件排序;
- order by 的级别比limit要高;
- 查看当前是否在安全模式下
show variables like 'sql_safe_updates';
- 开启
set sql_safe_updates=1;关闭set sql_safe_updates=0;
- 开启安全模式后需要有where limit限制才能delete、update;
2021年11月5日
- 不亲手敲一敲代码,永远不知道自己有哪一方面的不足,比如varible这个单词,敲了整整30分钟没找到错误,还有像creat也是,都是拼写错误找了半天,所以一定要亲手敲。
- 在--safe-updates下使用where和limit的条件下,才能更新,单独是用where子句,需要where是prefix索引列,这个prefix索引列还不知道啥意思。一般还是把--safe-updates打开,这样能够避免误操作。
- 先用select count(*) from 表名;
- 删除列
alter table chapter9 drop remark;
- 讲记录插入已有表格:
insert into 已存在的表 select * from chapter8 where empid like 'A101';