![]() |
Datenbank: Firbird • Version: 2.1 • Zugriff über: Fibplus 6.50
SQL sortierung / "eigne Definition"
Hallo zusammen
ist es möglich eine eigne Sortierreinfolge zu verwenden? In der DB sind folgende Werte: CH P VP S T Diese sollten nach folgendem kriterium sortiert werden. P VP S T CH bin für Tipps dankbar. Manfred |
Re: SQL sortierung / "eigne Definition"
Dafür müsstest du eine eigene Collation anlegen
|
Re: SQL sortierung / "eigne Definition"
Danke für Deine schnelle Antwort mkinzler.
Werde versuchen dies in dem Fall im Report "auszuwerten" anstelle in der Dataset. Shalom Manfred |
Re: SQL sortierung / "eigne Definition"
zur Info
konnte es so Lösen:
SQL-Code:
Shalom
SELECT
ID, C_NO, (CASE WHEN CABINET_G = 'P' THEN 1 ELSE 0 END ) CABINET_G_P, (CASE WHEN CABINET_G = 'VP' THEN '2' ELSE 0 END ) CABINET_G_VP, (CASE WHEN CABINET_G = 'S' THEN '3' ELSE 0 END ) CABINET_G_SEK, (CASE WHEN CABINET_G = 'T' THEN '4' ELSE 0 END ) CABINET_G_T, (CASE WHEN CABINET_G = 'CH' THEN '5' ELSE 0 END ) CABINET_G_CH FROM MEMBER WHERE ((MEMBER.CABINET_G IS NOT NULL ) AND (C_NO = ?C_NO) ) ORDER BY CABINET_G_P DESC, CABINET_G_VP DESC, CABINET_G_SEK DESC, CABINET_G_T DESC, CABINET_G_CH DESC Manfred |
Re: SQL sortierung / "eigne Definition"
Ich würde aber eher eine neue Tabelle als Lookupliste erstellen. Ist flexibler und m.E. übersichtlicher als diese großen case-Anweisungen.
|
Re: SQL sortierung / "eigne Definition"
Hallo Bernhard
Zitat:
Deshalb denke ich es sollte ok sein. Werde mich aber mit dem Thema ein wenig mehr befassen >> Tabelle als Lookuplist Danke Dir aber für Deine Hilfe ! Shalom Manfred |
Re: SQL sortierung / "eigne Definition"
Was spricht gegen einen CASE-Verteiler?
SQL-Code:
SELECT ID, C_NO,
CASE CABINET_G WHEN 'P' THEN 1 WHEN 'VP' THEN 2 WHEN 'S' THEN 3 WHEN 'T' THEN 4 WHEN 'CH' THEN 5 END sort FROM member WHERE CABINET_G IS NOT NULL AND C_NO = ?C_NO ORDER BY sort |
Re: SQL sortierung / "eigne Definition"
Zitat:
Werde dies gleich Testen. Shalom :dp: Manfred |
Re: SQL sortierung / "eigne Definition"
Hallo,
wie wäre es denn mit einer Erweiterung der Tabelle?
Code:
In der DB sind folgende Werte:
CH P VP S T Diese sollten nach folgendem Kriterium sortiert werden. P VP S T CH
Code:
Dann sollte doch ein
CABINET_G, Reihenfolge
CH , 5 P , 1 VP , 2 S , 3 T , 4
SQL-Code:
ausreichen und beim Einfügen neuer Werte in die Tabelle ist keine Anpassung an Programmen oder Reports ... erforderlich.
SELECT ID, C_NO, CABINET_G
FROM member WHERE CABINET_G IS NOT NULL AND C_NO = ?C_NO ORDER BY Reihenfolge |
Re: SQL sortierung / "eigne Definition"
Zitat:
Änderungen an der DB möchte ich nur wenn unbedingt nötig durchführen. Zitat:
Bei einer noch nicht exisiterenden DB finde ich Deine Lösung gut. Danke für Deine Hilfe. Shalom Manfred |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:14 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz