Einzelnen Beitrag anzeigen

Delphi.Narium

Registriert seit: 27. Nov 2017
2.419 Beiträge
 
Delphi 7 Professional
 
#4

AW: Berechnete Spalte erstellen

  Alt 22. Mai 2022, 17:34
Vielleicht solltet Du zuerst einmal etwas genauer spezifizieren, was Du vor hast. Momentan hab' ich keinerlei Vorstellung davon, wofür das gut sein soll.

select Betrag from Tabelle order by 1 sollte erstmal die Beträge von -unendlich bis +unendlich in aufsteigender Reihenfolge sortieren, select Betrag from Tabelle order by 1 desc dito., nur absteigend sortiert.

Aber vermutlich ist das ja jetzt nicht zwingend das, was Du erreichen möchtest.
SQL-Code:
select
Betrag,
case when betrag < 0 then -1 else +1 end as BerechneteSpalte
from Tabelle
Das ist jetzt nicht statisch.

Oder:
SQL-Code:
select
  Betrag,
  case when betrag < 0 then 1 else 0 end as IchBinNegativ,
  case when betrag > 0 then 1 else 0 end as IchBinPositiv,
  case when betrag = 0 then 1 else 0 end as IchBin0,
  case when betrag is null then 1 else 0 end as IchBinNull
from Tabelle
Das ist auch nicht statisch.
SQL-Code:
select
  Sum(Betrag) as Betrag_Summe,
  Sum(IchBinNegativ) as AnzahlWerteDieNegativSind,
  Sum(IchBinPositiv) as AnzahlWerteDiePositiveSind,
  Sum(IchBin0) as AnzahlWerteDie0Sind,
  Sum(IchBinNull) as AnzahlWerteDieNullSind
from (
  select
    Betrag,
    case when betrag < 0 then 1 else 0 end as IchBinNegativ,
    case when betrag > 0 then 1 else 0 end as IchBinPositiv,
    case when betrag = 0 then 1 else 0 end as IchBin0,
    case when betrag is null then 1 else 0 end as IchBinNull
  from Tabelle
)
SQL-Code:
select
  Sum(Betrag) as Betrag_Summe,
  Sum(case when betrag < 0 then 1 else 0 end) as AnzahlWerteDieNegativSind,
  Sum(case when betrag > 0 then 1 else 0 end) as AnzahlWerteDiePositiveSind,
  Sum(case when betrag = 0 then 1 else 0 end) as AnzahlWerteDie0Sind,
  Sum(case when betrag is null then 1 else 0 end) as AnzahlWerteDieNullSind
from Tabelle
Nur, was machen wir jetzt damit?
  Mit Zitat antworten Zitat