根据select结果生成insert语句

想根据 MySQL select 语句的结果生成 insert 语句。

use v6;

for $=finish.lines -> $line {
    next if $++ < 3 || $line ~~ / '-' /;
    say 'insert into convert_path (id, path_name, events, app_key, create_at, update_at) values (' ~ ($line.split: /<[\s+ |]>/, :skip-empty)>>.&quote.join(",") ~ ");";

}

sub quote(Str $ele) {
    return '"' ~ $ele ~ '"';
}


=finish
+-----+--------------------------------+-------------------------------------------------------------------------------------------------------------+----------------------------------+------------+------------+
| id  | path_name                      | events                                                                                                      | app_key                          | create_at  | update_at  |
+-----+--------------------------------+-------------------------------------------------------------------------------------------------------------+----------------------------------+------------+------------+
| 308 | 新增打听流程1                  | 新增打听,提交打听                                                                                           | 10c29cf8bd6e61f9ae4a0212eed803c8 | 1505098067 | 1505098067 |
| 309 | 用户购买流程                   | 浏览商品,加入购物车,结算购物车中的商品,点击付款,完成付款                                                    | c10606f35c85bac58625c95006fba769 | 1505283224 | 1505283224 |
| 311 | 用户购买流程2                  | 浏览商品,点击付款,完成付款                                                                                  | c10606f35c85bac58625c95006fba769 | 1505284039 | 1505284039 |
| 312 | 朗读模板付费转化流程           | 访问朗读首页,访问朗读模板,输入或导入文本,开始朗读,进入下载支付页,微信支付                                   | 54117664fad164a634c57571ba7c5aa7 | 1505284047 | 1505284047 |
| 313 | 用户购买流程3                  | 浏览商品,填写配送地址,点击付款,完成付款                                                                     | c10606f35c85bac58625c95006fba769 | 1505284110 | 1505284110 |
| 315 | 用户购买流程4                  | 浏览商品,填写配送地址,完成配送地址,点击立即购买,付款,付款完成                                               | c10606f35c85bac58625c95006fba769 | 1505284303 | 1505284303 |
| 316 | 新建朗读付费转化流程           | 访问朗读首页,访问新建朗读,输入或导入文本,开始朗读,进入下载支付页,微信支付                                   | 54117664fad164a634c57571ba7c5aa7 | 1505284351 | 1505284351 |
| 321 | goodsDetail                    | onLoad,onShow                                                                                               | c10606f35c85bac58625c95006fba769 | 1505451421 | 1505451421 |
+-----+--------------------------------+-------------------------------------------------------------------------------------------------------------+----------------------------------+------------+------------+

最后生成的结果如下:

insert into convert_path (id, path_name, events, app_key, create_at, update_at) values ("308","新增打听流程1","新增打听,提交打听","10c29cf8bd6e61f9ae4a0212eed803c8","1505098067","1505098067");
insert into convert_path (id, path_name, events, app_key, create_at, update_at) values ("309","用户购买流程","浏览商品,加入购物车,结算购物车中的商品,点击付款,完成付款","c10606f35c85bac58625c95006fba769","1505283224","1505283224");
insert into convert_path (id, path_name, events, app_key, create_at, update_at) values ("311","用户购买流程2","浏览商品,点击付款,完成付款","c10606f35c85bac58625c95006fba769","1505284039","1505284039");
insert into convert_path (id, path_name, events, app_key, create_at, update_at) values ("312","朗读模板付费转化流程","访问朗读首页,访问朗读模板,输入或导入文本,开始朗读,进入下载支付页,微信支付","54117664fad164a634c57571ba7c5aa7","1505284047","1505284047");
insert into convert_path (id, path_name, events, app_key, create_at, update_at) values ("313","用户购买流程3","浏览商品,填写配送地址,点击付款,完成付款","c10606f35c85bac58625c95006fba769","1505284110","1505284110");
insert into convert_path (id, path_name, events, app_key, create_at, update_at) values ("315","用户购买流程4","浏览商品,填写配送地址,完成配送地址,点击立即购买,付款,付款完成","c10606f35c85bac58625c95006fba769","1505284303","1505284303");
insert into convert_path (id, path_name, events, app_key, create_at, update_at) values ("316","新建朗读付费转化流程","访问朗读首页,访问新建朗读,输入或导入文本,开始朗读,进入下载支付页,微信支付","54117664fad164a634c57571ba7c5aa7","1505284351","1505284351");
insert into convert_path (id, path_name, events, app_key, create_at, update_at) values ("321","goodsDetail","onLoad,onShow","c10606f35c85bac58625c95006fba769","1505451421","1505451421");
Raku 

comments powered by Disqus