psql: Keine Ausgabe bei leerem Ergebnis?

psql: Keine Ausgabe bei leerem Ergebnis?

am 22.10.2009 17:09:17 von Tim Landscheidt

Hallo,

kann man bei psql die Ausgabe so einstellen, dass sie bei
einer leeren Ergebnismenge vollständig unterbleibt? Bei-
spiel:

| [tim@passepartout ~]$ psql -c "SELECT Name, Firstname, AGE('tomorrow'::=
DATE, DOB) AS Age FROM People
| > WHERE DATE_PART('month', DOB) =3D DATE=
_PART('month', 'tomorrow'::DATE) AND
| > DATE_PART('day', DOB) =3D DATE_P=
ART('day', 'tomorrow'::DATE)
| > ORDER BY AGE('tomorrow'::DATE, DOB), N=
ame, Firstname;"
| name | firstname | age
| ------+-----------+-----
| (0 Zeilen)

| [tim@passepartout ~]$

Da hätte ich gerne, dass psql /gar keine/ Ausgabe leistet.
Dass man das auch mit sed, awk, Perl & Co. hinbekommen kann,
ist klar :-).

Tim


--=20
Sent via pgsql-de-allgemein mailing list (pgsql-de-allgemein@postgresql.o=
rg)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-de-allgemein

Re: psql: Keine Ausgabe bei leerem Ergebnis?

am 22.10.2009 17:18:32 von Andreas Kretschmer

Tim Landscheidt wrote:

> Hallo,
>=20
> kann man bei psql die Ausgabe so einstellen, dass sie bei
> einer leeren Ergebnismenge vollständig unterbleibt? Bei-
> spiel:
>=20
> | [tim@passepartout ~]$ psql -c "SELECT Name, Firstname, AGE('tomorrow'=
::DATE, DOB) AS Age FROM People
> | > WHERE DATE_PART('month', DOB) =3D DA=
TE_PART('month', 'tomorrow'::DATE) AND
> | > DATE_PART('day', DOB) =3D DATE=
_PART('day', 'tomorrow'::DATE)
> | > ORDER BY AGE('tomorrow'::DATE, DOB),=
Name, Firstname;"
> | name | firstname | age
> | ------+-----------+-----
> | (0 Zeilen)
>=20
> | [tim@passepartout ~]$
>=20
> Da hätte ich gerne, dass psql /gar keine/ Ausgabe leistet.
> Dass man das auch mit sed, awk, Perl & Co. hinbekommen kann,
> ist klar :-).

test=3D*# select * from foo where t =3D 'tim';

Zeit: 0,344 ms
test=3D*#

Allerdings sind dann auch bei Ergebnissen die Tabellenköpfe etc. weg.

Frage: warm?



Andreas
--=20
Really, I'm not out to destroy Microsoft. That will just be a completely
unintentional side effect. (Linus Torvalds)
"If I was god, I would recompile penguin with --enable-fly." (unknown)
Kaufbach, Saxony, Germany, Europe. N 51.05082°, E 13.56889=
°

--=20
Sent via pgsql-de-allgemein mailing list (pgsql-de-allgemein@postgresql.o=
rg)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-de-allgemein

Re: psql: Keine Ausgabe bei leerem Ergebnis?

am 22.10.2009 17:39:32 von Tim Landscheidt

Andreas Kretschmer wrote:

>> kann man bei psql die Ausgabe so einstellen, dass sie bei
>> einer leeren Ergebnismenge vollständig unterbleibt? Bei-
>> spiel:

>> | [tim@passepartout ~]$ psql -c "SELECT Name, Firstname, AGE('tomorrow=
'::DATE, DOB) AS Age FROM People
>> | > WHERE DATE_PART('month', DOB) =3D D=
ATE_PART('month', 'tomorrow'::DATE) AND
>> | > DATE_PART('day', DOB) =3D DAT=
E_PART('day', 'tomorrow'::DATE)
>> | > ORDER BY AGE('tomorrow'::DATE, DOB)=
, Name, Firstname;"
>> | name | firstname | age
>> | ------+-----------+-----
>> | (0 Zeilen)

>> | [tim@passepartout ~]$

>> Da hätte ich gerne, dass psql /gar keine/ Ausgabe leistet.
>> Dass man das auch mit sed, awk, Perl & Co. hinbekommen kann,
>> ist klar :-).

> test=3D*# select * from foo where t =3D 'tim';

> Zeit: 0,344 ms
> test=3D*#

> Allerdings sind dann auch bei Ergebnissen die Tabellenköpfe etc. weg.

> Frage: warm?

Rolf hatte auf diese Option auch schon per Mail hingewiesen,
aber die Tabellenköpfe sind mir sehr wichtig; daher: ganz
kalt :-).

Wenn ich die Ergebnismenge an xargs oder ähnliches verfüt-
tere, benutze ich normalerweise auch "-Atc"; aber es geht
mehr um den Anwendungsfall "psql als Report Generator für
Arme".

Tim


--=20
Sent via pgsql-de-allgemein mailing list (pgsql-de-allgemein@postgresql.o=
rg)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-de-allgemein