![]() |
Re: SQL: Betrag ermitteln
Hallo,
ich weiss mittlerweile ziemlich gut, was Paradox ist. Und das Produkt läuft bereits seit mehr als 5 Jahren ohne Probleme beim Kunden. Ausserdem ist es nicht meine Entscheidung, was für eine Datenbank eingesetzt wird. Das Migrieren auf eine andere Datenbank (geplant: irgendwann vielleicht mal Firebird auf Linux-Server) würde uns momentan zuviel Entwicklungszeit kosten. Ciao, sepp001 |
Re: SQL: Betrag ermitteln
Also Sepp - wenn Du auf Paradox festgelegt bist, mußt Du wohl tricksen.
Wenn Du ein eindeutiges Schlüsselfeld hast, und Paradox "Union All" kennt, könntest folgendes versuchen:
SQL-Code:
Du selectierst id und Betrag, sowie id und negativer Betrag, vereinigst diese ergebnisse mit Union und gruppierst dann nach id (reduzierst also die gedoppelten Datensätze wieder auf einen) und holst Dir mit "max" den höchsten Wert (immer positiv).
SELECT A.idFeld
, max(A.DerBetrag) as Betrag FROM (SELECT idFeld , DeinWunschfeld As DerBetrag FROM Tabelle UNION ALL SELECT idFeld , (DeinWunschFeld * -1) As DerBetrag FROM Tabelle ) A GROUP BY A.idFeld Ende meines ParadoxLateins Gruß |
Re: SQL: Betrag ermitteln
Hallo Sepp,
ich meine, dass Local SQL keine verschachtelten SELECTS zulässt, was aber funktioniert ist:
SQL-Code:
Also einfach in String umwandeln, das - Zeichen "wegtrimmen" und zurückverwandeln).
select CAST(TRIM(LEADING "-" FROM CAST(wert as char(10)))as integer) from test
|
Re: SQL: Betrag ermitteln
Hallo,
@MrSpock: Die Idee ist super, nur leider würde genau das zu einem geschachtelten SELECT führen. *ärger* Wie gesagt, das Problenm ist bereits per Delphi gelöst. Trotzdem vielen Dank! Ciao, sepp001 |
Re: SQL: Betrag ermitteln
Hallo sepp001,
die Anweisung selbst ist ja noch kein verschachteltes SELECT. Es kann natürlich sein, dass du aus dieser Datenmenge etwas auswählen willst, aber auch das muss noch nicht zwangsweise in einem verschachteltes SELECT Statement geschehen. OK, du hast es ja bereits gelöst, aber ich bin noch nicht überzeugt, dass sich dein Problem nicht mit local SQL lösen lässt. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:06 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-2025 by Thomas Breitkreuz