Spaltenwahl wenn NULL

Progi

Benutzer
Beiträge
8
Hallo zusammen

Habe ein kleines Problem mit einem Select.

Ich habe eine Tabelle mit zwei Spalten.
  • Name1
  • Name2
In dieser Tabelle habe ich folgendes stehen:
Müller;Meier
NULL;Fischer
etc.

Nun habe ich ein Select wie folgt:

SELECT Name1 AS RESULT FROM namen

Nun möchte ich den Select so erweitern, dass wenn im Name1 NULL steht der Name2 ausgegeben wird.

Ich danke für die Hilfe.
Gruss Progi
 
Werbung:

akretschmer

Datenbank-Guru
Beiträge
9.028
Hallo zusammen

Habe ein kleines Problem mit einem Select.

Ich habe eine Tabelle mit zwei Spalten.
  • Name1
  • Name2
In dieser Tabelle habe ich folgendes stehen:
Müller;Meier
NULL;Fischer
etc.

Nun habe ich ein Select wie folgt:

SELECT Name1 AS RESULT FROM namen

Nun möchte ich den Select so erweitern, dass wenn im Name1 NULL steht der Name2 ausgegeben wird.

Ich danke für die Hilfe.
Gruss Progi

COALESCE ist Dein Freund:

Code:
test=*# create table progi (name1 text, name2 text);
CREATE TABLE
Time: 6,436 ms
test=*# copy progi from stdin;
Enter data to be copied followed by a newline.
End with a backslash and a period on a line by itself.
>> max  mustermann
>> \N  sorglos
>> \.
Time: 18815,641 ms
test=*# select coalesce(name1, name2) from progi;
 coalesce
----------
 max
 sorglos
(2 rows)

Sollte in jeder gut sortierten Datenbank so oder so ähnlich gehen ;-)
(coalesce ist IMHO SQL-Norm)
 
Werbung:
Oben