我正在将列数据从文件复制到db列逐行。将逗号分隔的数据插入到卡桑德拉
myFile-
'LB333','HK8','2015-05-23 16:20:00+0000',''
所以执行插入操作我写了下面的sed陈述书
sed "s/' *, *'/' '/g;s/\(.*\),\(.*\),\(.*\),\(.*\)/INSERT INTO home.BOM_WHERE (prod_id, id, effective_date, revision ,type) VALUES (\1,\2,\3, \4, 'COMPONENT');s/' '/','/g" myFile
下面的值应该在这些地方 -
\1 - 'LB333' - against column prod_id
\2- 'HK8' - against column id
\3 -'2015-05-23 16:20:00+0000' - against column effective_date
\4- '' - against column revision
\5- 'COMPONENT'- hardcodded i am inserting- against column type
所以加了我希望从最后一栏的文件中复制出前四个值,并按照我的r值通过harcodded值equirement。
上面的sed语句没有工作。仔细
sed -e "s/' *, *'/' '/g" \
-e "s/\(.*\),\(.*\),\(.*\),\(.*\)/INSERT INTO home.BOM_WHERE (prod_id, id, effective_date, revision ,type) VALUES (\1,\2,\3, \4, 'COMPONENT')" \
-e "s/' '/','/g"
第一个表达式:请建议
这是使用['LOAD DATA INFILE'](http://dev.mysql.com/doc/refman/5.7/en/load-data.html)的最佳例子。请不要涉及'sed'。 – tadman
@ John1024先生我更新了我的帖子 – saurav
@tadman对不起,先生,我错误的标记为MySQL。这列数据插入cassandra表中 – saurav