1 添加和删除字段
注意:字符串可以放在单引号内;字段名要么直接写,要么放在反单引号内(即数字键1左边的符号)。
对字段进行修改共同点是使用alter table 表名 + ...
,后面着重记住ADD, DROP, CHANGE
即可
1.1 添加字段
ALTER TABLE 表名 ADD 字段名 类型(长度) [COMMENT 注释] [约束];
例如:为emp表新增一个字段“昵称”为“nickname”,类型为字符串,长度为20
alter table emp add nickname varchar(20) comment '昵称';
1.2 删除字段
ALTER TABLE 表名 DROP 字段名;
例如:删除emp表字段“nickname”
alter table emp drop nickname;
1.3 修改字段
ALTER TABLE 表名 CHANGE 旧字段名 新字段名 类型(长度) [COMMENT 注释] [约束];
例如:为emp表修改字段“昵称”为“nickname”,类型为字符串,长度为200
alter table emp change nickname nickname varchar(200) comment '昵称';
2 多表查询
2.1 内连接
内连接查询的是两张表的交集部分。一般多表查询会使用取别名的形式,如 employee e
就是把employee表取别名为e,其实省略了中间的as。
SELECT 字段列表 FROM 表1 inner join 表2 on 连接条件;
例:查询员工姓名和对应的部门姓名,注意后面用on连接不是用where。
select e.name, d.name from emp e inner join department d on e.dept_id = d.id;
2.2 外连接
左外连接:相当于查询左表的所有数据包含交集部分的数据,可以理解成查询左表全部数据以及交集的数据,如果有的数据在左表但是不在交集中,也会被查询出来,交集中的字段显示为null。
SELECT 字段列表 FROM 表1 LEFT JOIN 表2 ON 连接条件;
例:查询emp表所有数据,和对应的部门信息
select e.*, d.name from emp e left join dept d on e.dept_id = d.id;
右外连接:相当于查询右表的所有数据包含交集部分的数据,和左表同理。
SELECT 字段列表 FROM 表1 RIGHT JOIN 表2 ON 连接条件;
3 添加和删除索引
3.1 添加索引
ALTER TABLE 表名 ADD INDEX 索引名(字段名,字段名...);
例:给书籍book添加book_id,book_nama,info的索引
alter table book add index mul_bid_bname_info(book_id,book_name,info);
注:索引还可以为唯一索引UNIQUE
,主键索引PRIMARY KEY
。
3.2 删除索引
ALTER TABLE 表名 DROP INDEX 索引名;
例:删除上面的索引
alter table book drop index mul_bid_bname_info;