MYSQL数据库另类导出导入技巧

本文介绍如何将城市表和省份表的数据合并到一个新的区域表中,通过使用 SQL 的 UNION ALL 语句来生成所需的插入语句。

有一张城市表 city(city_id,city_name,pro_id)

一张省份表 province(pro_id,pro_name)

现在需要把这两张表中的数据合并到另外一张区域表中

t_area(pro_id,pro_name,city_id,city_name)

 

先用union all把select语句联系起来

SELECT CONCAT('select ''',c.`pro_id`,''',''',p.`pro_name`,''',''',c.`city_id`,''',''',c.`city_name`,''' union all')
FROM city c INNER JOIN province p 
 ON c.pro_id = p.`pro_id`

运行结果

 

把这些select语句拷贝到文本文件中,在最前面加上INSERT INTO `t_area`,同时去掉最后面的union all就可以了

INSERT INTO `t_area` SELECT '39','广东','547','广州' UNION ALL
SELECT '39','广东','548','深圳' UNION ALL
SELECT '39','广东','549','珠海' UNION ALL
SELECT '39','广东','550','汕头' UNION ALL
SELECT '39','广东','551','韶关' UNION ALL
SELECT '39','广东','552','河源' UNION ALL
SELECT '39','广东','553','梅州' UNION ALL
SELECT '39','广东','554','惠州' 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值