Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Select || mit NULL-Feldern (https://www.delphipraxis.net/185204-select-%7C%7C-mit-null-feldern.html)

hoika 21. Mai 2015 15:33

Datenbank: Firebird • Version: 2 • Zugriff über: egal

Select || mit NULL-Feldern
 
Hallo,
wie die Überschrift schon agt.

Tabelle Tab1 mit den Felder A und B (Varchar).

Select A || B erzeugt NULL, wenn es der beiden Felder NULL ist.

Wie kann ich das Umgehen.

(Coalesce klappt, will ich aber eigentlich vermeiden).

Danke


Heiko

Neutral General 21. Mai 2015 16:32

AW: Select || mit NULL-Feldern
 
coalesce.

Gibt keine andere Möglichkeit. Sobald du etwas mit NULL verknüpfst wird das Ergebnis NULL.

Dejan Vu 21. Mai 2015 16:33

AW: Select || mit NULL-Feldern
 
Was ist an Coalesce so verwerflich?

himitsu 21. Mai 2015 16:38

AW: Select || mit NULL-Feldern
 
Entweder COALESCE oder Firebird hat vielleicht eine Concat-Funktion, welche NULL ignoriert.


SQL-Code:
SELECT IFF(A IS NULL, '', A) || IFF(B IS NULL, '', B) FROM ...
ohne COALESCE :angle2:

hoika 21. Mai 2015 19:00

AW: Select || mit NULL-Feldern
 
Hallo,
das System läuft stellenweise noch mit Interbase, also nix mit Coalesce und IFF ...
Sind schon dabei, das zu ändern ...


Heiko

DeddyH 21. Mai 2015 19:29

AW: Select || mit NULL-Feldern
 
Kennt Interbase CASE? Damit müsste es auch zu machen sein.
SQL-Code:
SELECT (CASE WHEN A IS NULL THEN '' ELSE A END) || (CASE WHEN B IS NULL THEN '' ELSE B END) FROM...
(oder so ähnlich)

himitsu 21. Mai 2015 23:44

AW: Select || mit NULL-Feldern
 
Kann Interbase denn keine StoredProcs?

Erstellt euch einfach die fehlenden Funktionen und benutzt sie dann. :angle:

mkinzler 22. Mai 2015 05:10

AW: Select || mit NULL-Feldern
 
Oder an eine UDF. Da gibt es sicher was Passendes

Dejan Vu 22. Mai 2015 06:29

AW: Select || mit NULL-Feldern
 
Wieso einfach, wenn's auch umständlich geht.

mkinzler 22. Mai 2015 07:00

AW: Select || mit NULL-Feldern
 
Zitat:

Zitat von mkinzler (Beitrag 1302519)
Oder an eine UDF. Da gibt es sicher was Passendes

Z.B. F_IF in der FreeAdhocUDF oder IIF in der rFunc-UDF-Bibliothek oder schnell Selberschreiben


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:36 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz