MySQL学习记录(第二周)20211101-20211107

167 阅读2分钟

2021年11月1日

  1. alter table chapter8 add remark varchar(100);#增加一列remar
  2. update chapter8 set remark='无特殊记录';#将remark列填上无特殊记录
  3. select * from chapter8;
  4. 这几天要写月报,比较忙可能看书来不及,但是一定要坚持,总有一天我要让做月报这件事变得轻松一些。
  5. update chapter8 set remark='加油!' order by sales limit 3;

2021年11月2日

  1. 抽从第二到第五的写法:limit 4 offset 1;
  2. 抽排在第4位和第5位的:limit 2 offset 3;
  3. 写语句的顺序是select-from-where-group by-having-order by,
  4. 但是实际上执行的顺序是from-where-group by-having-select-order by。

2021年11月3日

  1. 执行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模式还是可以删除的
  1. 条件删除相当于用delete代替select,在有条件的删除之前先用create table chapter9 select * from chapter8;命令创建一个表。delete from chapter9 order by sales desc limit 4;删除销售排前4的人。
  2. 到周末才能把手里的事弄完,有时间学sql,慢一点没关系,但不能贪多、贪快,坚持住。

2021年11月4日

  1. order by 可以根据多条件排序,可以是多条件排序;
  2. order by 的级别比limit要高;
  3. 查看当前是否在安全模式下show variables like 'sql_safe_updates';
  • 开启set sql_safe_updates=1;关闭set sql_safe_updates=0;
  1. 开启安全模式后需要有where limit限制才能delete、update;

2021年11月5日

  1. 不亲手敲一敲代码,永远不知道自己有哪一方面的不足,比如varible这个单词,敲了整整30分钟没找到错误,还有像creat也是,都是拼写错误找了半天,所以一定要亲手敲。
  2. 在--safe-updates下使用where和limit的条件下,才能更新,单独是用where子句,需要where是prefix索引列,这个prefix索引列还不知道啥意思。一般还是把--safe-updates打开,这样能够避免误操作。
  • 先用select count(*) from 表名;
  1. 删除列alter table chapter9 drop remark;
  2. 讲记录插入已有表格:
  • insert into 已存在的表 select * from chapter8 where empid like 'A101';