La sortie des résultats de plusieurs requêtes sql de postgresql
J'ai postgresql-9.2 installé sur ma machine locale (sous windows 7) et je suis aussi l'administrateur. Je suis l'aide de la Outil de Requête de pgAdmin III pour interroger ma base de données. Mon problème est comme suit:
Dire que j'ai deux tables Table_A
et Table_B
avec un nombre différent de colonnes. Aussi, dire que j'ai à la suite de deux très requêtes simples:
select * from Table_A;
select * from Table_B;
Je veux exécuter ces requêtes et de voir la sortie de deux d'entre eux ensemble. Je n'ai pas l'esprit si je vois le résultat dans l'interface graphique ou dans un fichier.
J'ai aussi essayé la commande de copie et de la sortie d'un fichier csv. Mais au lieu d'ajouter au fichier qu'il remplace. Donc, je finis toujours avec les résultats de la requête 2 seulement. La même chose se produit avec l'interface graphique.
C'est vraiment gênant pour commenter l'un de requêtes, exécuter l'autre, la sortie de deux fichiers différents, puis de fusionner les deux fichiers ensemble.
union
Vous pouvez utiliser
union all
, remplir les colonnes avec null
en tant que de besoin. Quelles sont les définitions de table?Dire que ce sont les structures de la table: Table_A(col_A, col_B); Table_B(col_c, col_D, col_E, col_F)
La définition d'une table est plus que juste les noms de colonne. Considérer ce commentaire
Ceci ressemble plus à une question sur le client SQL, pas sur Postgres. Peut-être essayer un autre client SQL?
OriginalL'auteur PS1 | 2013-06-09
Vous devez vous connecter pour publier un commentaire.
Ce n'est pas actuellement pris en charge par PostgreSQL - à partir de la documentation
(http://www.postgresql.org/docs/9.4/interactive/libpq-exec.html):
La chaîne de commande peut contenir plusieurs commandes SQL (séparés par des points-virgules). Plusieurs requêtes envoyées dans un seul PQexec appels sont traités en une seule opération, à moins explicite BEGIN/COMMIT commandes inclus dans la chaîne de requête pour la diviser en plusieurs opérations. Notez cependant que le retour de l'PGresult structure décrit seulement le résultat de la dernière commande exécutée à partir de la chaîne. Si l'une des commandes de l'échec, de la transformation de la chaîne s'arrête avec ça et le retour de l'PGresult décrit la condition d'erreur.
OriginalL'auteur Ibrahim Dauda
Votre problème ne dépend pas du client.
En supposant que toutes les colonnes de type
text
, essayez cette requête:Les noms de colonnes et de bandes de données sont définies par la première branche d'un
UNION SELECT
. Le reste est à l'automne en ligne.OriginalL'auteur Erwin Brandstetter
Vous pouvez utiliser de l'UNION de TOUS, mais vous devez vous assurer que chaque sous-requête a le même nombre de colonnes.
ne fonctionne pas.
travaillera
OriginalL'auteur ra1