PS1*_*PS1 5 postgresql pgadmin
我在本地机器上安装了postgresql-9.2(运行Windows 7),我也是管理员.我正在使用pgAdmin III的查询工具来查询我的数据库.我的问题如下:
假设我有两个表Table_A并且Table_B列数不同.另外,假设我有以下两个非常简单的查询:
select * from Table_A;
select * from Table_B;
Run Code Online (Sandbox Code Playgroud)
我想运行这两个查询并查看它们的输出.如果我在GUI或文件中看到输出,我不介意.
我也尝试了复制命令并输出到csv.但是不是附加到文件而是覆盖它.所以,我总是只得到查询2的结果.GUI也会发生同样的事情.
注释一个查询,运行另一个查询,输出到两个不同的文件然后将这两个文件合并在一起真的很烦人.
PostgreSQL目前不支持这一点 - 来自文档(http://www.postgresql.org/docs/9.4/interactive/libpq-exec.html):
命令字符串可以包含多个SQL命令(以分号分隔).在单个事务中处理在单个PQexec调用中发送的多个查询,除非查询字符串中包含明确的BEGIN/COMMIT命令以将其划分为多个事务.但请注意,返回的PGresult结构仅描述从字符串执行的最后一个命令的结果.如果其中一个命令失败,则字符串处理将停止,返回的PGresult将描述错误情况.
您的问题不取决于客户。
假设所有列的类型均为text,请尝试以下查询:
SELECT col_a AS col_ac, col_b AS col_bd
,NULL::text AS col_e, NULL::text AS col_f
FROM table_a
UNION ALL
SELECT col_c, col_d, col_e, col_f
FROM table_b;
Run Code Online (Sandbox Code Playgroud)
列名和数据磁带由 的第一个分支定义UNION SELECT。其余的必须排队。
| 归档时间: |
|
| 查看次数: |
12871 次 |
| 最近记录: |