- SQL语句执行顺序
- From
- 表连接
- on连接条件,形成新的虚拟表
- where 筛选条件
- group by 生成新的结果集合 group by 分组列表
- having 分组后筛选
- select 选出显示的
- order by 排序
- limit 分页/个数限制
- 子查询顺序
除了exists,先执行子查询,再外查询
exists:相关子查询,先执行外查询,再根据子查询字段进行过滤。
- 分页查询
limit (page-1)*size,size
- 字符控制函数
substr("helloworld",1,5) hello
instr("helloworld","w") 6
LPAD(salary,10,"*") ****salary
TRIM("H" from "Helloworld") elloworld
- 视图应用场景
- 多个地方用到同样的查询结果
- 该查询结果会用的SQL语句较复杂
- DML 表操作 无table
insert into tableName( column1,column2,...) values(值1,...)
update student
set age=18
where name="hwj"
delete from student
where age=18
delete from student s1,course c1
where s1.class=c1.class
and s1.name="mm";
# 方式2
truncate 语句
truncate table student
- DDL 管理操作,对表操作要加上字段table
# 创建
create table if not exists student(column1,...)
# 修改 字段名
Alter table student change column 旧 新字段
# 修改表名
Alter table student rename to student1
# 修改字段类型和约束
Alter table tablename modify column column_name 约束
# 添加字段
Alter table 表名 Add column 字段;
# 删除字段
Alter table 表名 drop column 字段
# 删除表
drop table if exists 表名