1.按照一定条件筛选后将A表中的某些字段的数据复制到B表中
INSERT INTO drilling(字段1, 字段2,字段3,……) SELECT 字段1, 字段2,字段3,…… FROM A表的表名 WHERE 条件
实例:
INSERT INTO drilling(id, UUID,NAME,description) SELECT id, UUID,NAME,description FROM db_process_list WHERE NAME LIKE '%drilling%' AND category_id=201
2.给一个字段的数据赋值、给null赋值
(1) 给一个字段的数据赋值
UPDATE 表名 SET 字段名 = '待赋的值'
实例:
UPDATE drilling SET method = 'IPCC 2013 - GWP 100a'
(2) 给null赋值
UPDATE 表名 SET 字段名= '待赋的值' WHERE 字段名IS NULL
实例:
UPDATE machining_process SET category = '其它' WHERE category IS NULL
3.根据条件给A字段赋值,条件:B字段包含某个字符串
UPDATE 表名 SET 字段A= '赋值的内容' WHERE LOCATE('字符串',字段B)>0
实例:
UPDATE drilling SET description = '该市场不包含任何运输,因为该产品被视为服务活动。从摇篮开始,即包括所有上游活动。' WHERE LOCATE('market',NAME)>0
4.根据某个字段的内容进行分组,并显示出要一同显示的字段名
SELECT 需要分组的字段名,COUNT(*),GROUP_CONCAT(要一同显示的字段名) FROM 表名 GROUP BY 需要分组的字段名
实例:
SELECT description,COUNT(*),GROUP_CONCAT(id) FROM drilling GROUP BY description
效果:
5.条件查询后进行分组
SELECT 需要分组的字段名,COUNT(*),GROUP_CONCAT(要一同显示的字段名) FROM 表名 WHERE 条件语句 GROUP BY 需要分组的字段名
实例:
SELECT description,COUNT(*),GROUP_CONCAT(id) FROM other WHERE NAME LIKE '%contouring%' GROUP BY description
6.复制表的结构到新表、复制A表的内容到B表(结构相同)
(1)复制表的结构到新表
CREATE TABLE 新表名 LIKE 旧表名
实例:
CREATE TABLE milling LIKE drilling
(2)复制A表的内容到B表(结构相同)
INSERT INTO B表 SELECT * FROM A表
实例:
INSERT INTO machining_process SELECT * FROM drilling
7.查询A表比B表相同字段多出的数据
SELECT DISTINCT 字段名 FROM A表 WHERE A表.字段名 NOT IN(SELECT 字段名 FROM B表)
实例:
SELECT DISTINCT id FROM db_process_list WHERE category_id=201 AND id NOT IN(SELECT id FROM machining_process)