增加
刚知道还能这样玩的时候有点懵,学习时都是一些简单操作,又有些惊奇,说都了都是废话,直接看干货吧。
-- 两表字段一致,并全插入
-- 目标表 来源表
INSERT INTO a SELECT * FROM b;
-- 导入|插入 指定的字段
-- 主键不能相同 字段必须保持一致
INSERT INTO a(字段1,字段2,...)
SELECT 字段1,字段2,... FROM b;
-- 导入目标表中不存在
INSERT 目标表 (字段1,字段2,...)
SELECT 字段1,字段2,...
删除
由于新增错误数据,根据创建人删除两表数据
-- 从表1把表2中匹配的数据删除
DELETE t1
FROM t1,t2
WHERE t1.id = t2.id
-- 表1有数据,表2无数据的删除
DELETE t1
FROM t1
LEFT|RIGHT|INNNER t2
ON t1.id = t2.id
WHERE t2.id IS NULL;
-- 两张表都有数据
-- 不能别名
DELETE t1,t2
FROM t1
LEFT JOIN t2
ON t1.id = t2.id
WHERE t1.id = 25
修改
双表修改某一字段数据,可根据某些唯一标识精准修改。又可根据某些特定数据模糊批量处理。
//模糊修改
UPDATE student s
LEFT|RIGHT|INNER JOIN class c
ON s.class_id = c.id
SET s.class_name = '龙刺',c.stu_name = '龙刺'
WHERE stu_code LIKE %4% ;
//精准修改
UPDATE student s, class c
SET s.class_name = '玛卡巴卡', c.stu_name = '玛卡巴卡'
WHERE S.class_id = c.id;
//刷新数据
UPDATE base_competitors_list_new b,
lining_area l
SET
b.provincial_area = l.provincial,
b.provincial_area_code = l.provincial_code
WHERE
b.province = l.province_code;
//刷新模糊数据
UPDATE base_customer_business_new b,
lining_base_area l
SET
-- b.region_code = l.adcode
b.provincial_area_code = l.adcode
WHERE
b.region like '%l.name%'