如何从mysql中的文件运行查询

时间:2017-11-07 17:19:06

标签: mysql sql

如何运行写入文件的mysql查询(只是查询部分),例如。 accounts.txt

/test/mysql -h testdb.com -P 8995 -p -u testaccount -e 
"select distinct
    amp.account_id
from
    account_marketplace_groups amp;" -D company > /tmp/output.csv

如何将实际查询放在文件中并执行上述操作仍然可以在csv中获取输出

这是正确的方法吗?

/test/mysql -h testdb.com -P 8995 -p -u testaccount -e /account.txt  -D company > /tmp/output.csv

2 个答案:

答案 0 :(得分:2)

-e选项不能与文件名一起使用,它希望参数是查询。只需使用输入重定向,因为mysql从标准输入读取。

/test/mysql -h testdb.com -P 8995 -p -u testaccount  -D company < /account.txt > /tmp/output.csv

答案 1 :(得分:1)

+1给Barmar的答案,但这是另一个解决方案,同样有效:

/test/mysql -h testdb.com -P 8995 -p -u testaccount \
  -e "source /account.txt"  -D company > /tmp/output.csv

也就是说,如果您不想使用<进行输入重定向,可以使用-e "source ..."命令从命令行中读取文件。