Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Sortierung TClientDataset, NULL Werte ignorieren (https://www.delphipraxis.net/186607-sortierung-tclientdataset-null-werte-ignorieren.html)

videlius 16. Sep 2015 08:42

Datenbank: - • Version: - • Zugriff über: -

Sortierung TClientDataset, NULL Werte ignorieren
 
Hallo,

Ich möchte ein Feld eines TClientDataset sortieren.
Hierbei handelt es sich um Integer-Werte. Das Problem hierbei ist, dass nicht alle Datensätze einen Integer-Wert enthalten. Die sind dann NULL.
Meine Frage hierzu wäre nun: Ist es möglich die mit Werten belegten Datensätze zu sortieren, die Datensätze mit NULL-Werten aber nicht in die Sortierung mit einzubeziehen
und sie auf der Position zu belassen wo sie gerade sind.

Ich gebe mal ein kleines Bsp. an um zu verdeutlichen, was ich meine.


Bsp:

unsortiert

NULL
NULL
5
NULL
3
NULL
NULL
8

sortiert

NULL
NULL
3
NULL
5
NULL
NULL
8

(Delphi Vers. XE7)

Gruß: videlius

mkinzler 16. Sep 2015 08:46

AW: Sortierung TClientDataset, NULL Werte ignorieren
 
Nein, dafür müsstest Du Dir schon eine eigene Sortierungsfunktionalität basteln. Es wird auch nicht reichen, einen eigenen Vergleichsoperator zu implementieren, da dieser immer nur 2 Werte vergleicht und nicht die gesammte Menge betrachtet, was Du in Deinem Fall ja musst, wenn Du bestimmte Elemente ausschliessen willst.
Du könntest zuerst die Nullwerte rausnehmen und Dir deren Position merken und diese nach der Sortierung wieder in die Datenmenge einfügen.

videlius 16. Sep 2015 10:08

AW: Sortierung TClientDataset, NULL Werte ignorieren
 
Ok, vielen Dank erstmal. Da brauche ich nicht weiter nach möglichen Lösungsansätzen suchen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:16 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