Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Firebird SQL Sortierung - Verschluckt ergebnis (https://www.delphipraxis.net/183747-firebird-sql-sortierung-verschluckt-ergebnis.html)

Eppos 2. Feb 2015 10:08

Datenbank: Firebird • Version: 2.5 • Zugriff über: FireDAC

Firebird SQL Sortierung - Verschluckt ergebnis
 
Hallo Zusammen,

wenn ich diesen SQL auführe:
Delphi-Quellcode:
select
Zahl
from Tabelle_Test
order by
Substring( Zahl from (Char_Length( Zahl ) -1) for 1),
Substring( Zahl from (Char_Length( Zahl ) -2) for 2)
verschluckt er mir das Ergebnis, sobald in irgendeiner Zeile, das Feld Zahl nicht gefüllt bzw. leer ist.

Kann man hier entgegenwirken?

Gruß
Eppos

mkinzler 2. Feb 2015 10:10

AW: Firebird SQL Sortierung - Verschluckt ergebnis
 
versuch mal
SQL-Code:
  ...
order by
  iif( zahl is null, '', Substring( Zahl from (Char_Length( Zahl ) -1)) for 1), ...

jaevencooler 2. Feb 2015 10:12

AW: Firebird SQL Sortierung - Verschluckt ergebnis
 
Moin,


du solltest eine Null-Value Conversion machen, auf den feldern die Du abfragst.


http://www.firebirdsql.org/manual/nu...nversions.html


Cu Michael

:-D da war einer schneller

Eppos 2. Feb 2015 11:16

AW: Firebird SQL Sortierung - Verschluckt ergebnis
 
@mkinzler
Habs ausprobiert mit dem abfangen von NULL und leerstring, hat geklappt, vielen Dank

himitsu 2. Feb 2015 11:29

AW: Firebird SQL Sortierung - Verschluckt ergebnis
 
Daß ein NULL im ORDER-BY gleich alles so abkratzen lässt? :shock:

SQL-Code:
SELECT Zahl
FROM Tabelle_Test
ORDER BY substr(reverse(coalesce(Zahl, '')) FROM 1 FOR 2)

-- oder (das kann Firebird doch hoffentlich)
SELECT Zahl
FROM Tabelle_Test
ORDER BY reverse(substr(coalesce(Zahl, '') FROM -2))

-- aber eventuell meinst du eher
SELECT Zahl
FROM Tabelle_Test
ORDER BY reverse(Zahl) -- ORDER BY reverse(coalesce(Zahl, ''))
http://www.firebirdsql.org/refdocs/l...c-reverse.html


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:20 Uhr.

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