1、select语句及其执行顺序
- select 要返回的列或者表达式
- from 从中检索数据的表仅在从表选择数据时使用
- where 行级过滤
- group by 分组说明仅在按组计算聚集时使用
- having 组级过滤
- order by 输出排序顺序
- limit 要检索的行数
2、delete、truncate、 drop三者之间的关系
- TRUNCATE和DELETE只删除数据,DROP则删除整个表(结构和数据)
- delete 是 DML 语句,操作完以后如果没有不想提交事务还可以回滚,truncate 和 drop是DDL 语句,操作完马上生效,不能回滚
执行的速度上,drop>truncate>delete
总结:
1、在速度上,一般来说,drop>truncate>delete。
2、在使用drop和truncate时一定要注意,虽然可以恢复,但为了减少麻烦,还是要慎重。
3、如果想删除部分数据用delete,注意带上where子句,回滚段要足够大; - 如果想删除表,当然用drop;
- 如果想保留表而将所有数据删除,如果和事务无关,用truncate即可;
- 如果和事务有关,或者想触发trigger,还是用delete;
- 如果是整理表内部的碎片,可以用truncate跟上reuse stroage,再重新导入/插入数据。
3、删除表中的列
- alter table 表名 drop column 列名
使用RENAME TABLE语句可以重命名一个表 - rename table customers2 to customers
- alter table 表名 add column 列名 数据类型
表中添加一列