嗨,我有这个数据库:
id | item_name | number_of_store| store_location|
+----+---------+-------------------+-------------+
| 3 | margarine | 2 | QLD |
| 4 | margarine | 2 | NSW |
| 5 | wine | 3 | QLD |
| 6 | wine | 3 | NSW |
| 7 | wine | 3 | NSW |
| 8 | laptop | 1 | QLD |
+----+---------+-------------------+-------------+
使用不同于sqllite3语法的以下代码,我得到了想要的结果:
id | item_name | number_of_store| store_location|
+----+---------+-------------------+-------------+
| 3 | margarine | 2 | QLD |
| 4 | margarine | 2 | NSW |
语法是:
sqlite3 store.sqlite 'select item_name,number_of_store,store_location from store where item_name = 'margarine'> store.txt
但是当我将其保存到txt时
3|margarine|2|QLD
4|margarine|2|NSW
但是我想要的txt输出是
3,margarine,2,QLD
4,margarine,2,NSW
我认为我应该使用SED,但不确定如何做
我尝试过
'|sed 's/|//g' |sed 's/|//g'|sed 's/^//g'|sed 's/$//g'
但是结果只会删除'|'我不太确定如何将其更改为“,”
答案 0 :(得分:1)
尽管您应该使用sql本身,但是根据您的要求,您可以使用以下sed
。
awk '{gsub("|",",")} 1' Input_file
或在sed
中:
sed 's#|#,#g' Input_file
如果要使用sed -i.bak
选项将输出保存到Input_file本身,它将备份Input_file并将输出保存到Input_file本身。