【问题标题】:How to insert a resultset of a query to a table in shell script?如何将查询的结果集插入到 shell 脚本中的表中?
【发布时间】:2014-07-21 05:13:16
【问题描述】:

我写了一个如下所示的shell脚本

#!/bin/bash

result=$(msql -h localhost -uroot -proot -e database "SELECT * FROM USERS");

resultdetails=$(msql -h localhost -uroot -proot -e database "SELECT * FROM DETAILS");

我需要将 result 和 resultdetails 中的结果集都插入到新表“TABLE USERDETAILS”中。

我已经尝试了很多并在谷歌搜索了一个小时,但无法获得解决方案,所以提前感谢任何帮助。

【问题讨论】:

  • 修改您的 SQL 查询以将结果集放入新表中。
  • @Sathish 首先检查数据库连接是否完成。为此,只需使用 #!/bin/bash # 连接到测试数据库并查询 USERS 表运行脚本 mysql -u root -p root test
  • @Jigar OP 显然已经知道如何运行查询。提供一种不同的方式来做到这一点并没有立竿见影的帮助。

标签: mysql shell ubuntu


【解决方案1】:

尝试插入...选择...语法。下面是一个例子

msql -h localhost -uroot -proot -e database "INSERT into userdetail SELECT  u1, u2, u3, d1, d2, d3 FROM USERS u INNER JOIN DETAILS d ON (u.id=d.user_id)"

【讨论】:

    猜你喜欢
    • 2015-05-13
    • 2019-07-05
    • 1970-01-01
    • 2014-10-20
    • 1970-01-01
    • 2019-05-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多