Re: IF ELSEIF Funktion in PL/pgSQL erstellen

"Gunnar Nick" Bluth"" <[email protected]> Fri, 20 Dec 2013 15:31:24 +0100 (CET)
Newsgroups gmane.comp.db.postgresql.german
Message-ID <[email protected]>
Am Do, 19.12.2013, 19:30, schrieb Patryk Kordylewski:
> Hallo Gunnar,
Moinsen Jungs,

"warum einfach, wenn's auch umständlich geht".... oder habe ich irgendwas
grob übersehen / missverstanden?

>> ich habe einen View 'taxons' erstellt der (im wesentlichen) folgende
>> Daten erhält:
>>
>>     family    |    genus    |      taxon_name
>> -------------+-------------+----------------------
>>   SPHAERIIDAE | Pisidium    | Pisidium personatum
>>   SPHAERIIDAE | Pisidium    | Pisidium sp.
>>   SPHAERIIDAE | Sphaeriidae | Sphaeriidae Gen. sp.
>> (3 rows)
>>

>> Nun habe ich gelesen, dass ich mittels Funktionen Spalten gleich einem
>> View abspeichern kann.

bluthg=# create or replace view tax_view as (select *,
        case when taxon_name ~ 'sp.$' then
                case  when genus ~ 'idae$' then 'Familie'
                else 'Gattung'
         end
        else 'Art'
        end
        from taxons
);
CREATE VIEW
Zeit: 29,059 ms
bluthg=# SELECT * from tax_view ;
+-------------+-------------+----------------------+---------+
|   family    |    genus    |      taxon_name      |  case   |
+-------------+-------------+----------------------+---------+
| SPHAERIIDAE | Pisidium    | Pisidium personatum  | Art     |
| SPHAERIIDAE | Pisidium    | Pisidium sp.         | Gattung |
| SPHAERIIDAE | Sphaeriidae | Sphaeriidae Gen. sp. | Familie |
+-------------+-------------+----------------------+---------+
(3 Zeilen)

Zeit: 0,435 ms
bluthg=#

Just my 2p,

Nick (as a matter of fact, auch Gunnar ;-)


>>
>> Ich hätte also gerne:
>>
>> SELECT *, taxon_level FROM taxons
>>
>>     family    |    genus    |      taxon_name      |   taxon_level
>> -------------+-------------+----------------------+----------------
>>   SPHAERIIDAE | Pisidium    | Pisidium personatum  | 	Art
>>   SPHAERIIDAE | Pisidium    | Pisidium sp.	  |	Gattung
>>   SPHAERIIDAE | Sphaeriidae | Sphaeriidae Gen. sp. |	Familie
>> (3 rows)
>>



-- 
Gunnar "Nick" Bluth
RHCE/SCLA

Mobil   +49 172 8853339
Email: [email protected]
__________________________________________________________________________
In 1984 mainstream users were choosing VMS over UNIX.  Ten years later
they are choosing Windows over UNIX.  What part of that message aren't you
getting? - Tom Payne


-- 
Sent via pgsql-de-allgemein mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-de-allgemein