Fuerchau
17-10-12, 09:01
Deine Datei wird immer nach dem From angegeben, so ist das bei SQL.
Mittels "from (...) Name" kreirst du eine sog. "derived Table", also ein Zwischenergebnis.
Innerhalb der Klammern kodierst du also einen ganz normalen Select mit Feldbenamung für berechnete Felder, so dass du im übergeordneten Select diese Felder verwenden kannst.
select f1, f2, ...
from (
select aa as f1, bb as f2 ...
from MyTable
) NewName
jetzt kommt es noch darauf an, was du mit dem ganzen machen willst.
Einfacher ist es wirklich ohne derived Table, wenn die Felder nur 1 Mal benötig werden:
select sum( STD * (STS - STS / 100.00 * RAB + AUF / 100.00 * AUF) )
from MyFile
Je nachdem wie dein Rabatt oder Aufschlag wirken soll, musst du halt deine Klammern setzen. Einen Case sehe ich da i.M. gar nicht.
Mittels "from (...) Name" kreirst du eine sog. "derived Table", also ein Zwischenergebnis.
Innerhalb der Klammern kodierst du also einen ganz normalen Select mit Feldbenamung für berechnete Felder, so dass du im übergeordneten Select diese Felder verwenden kannst.
select f1, f2, ...
from (
select aa as f1, bb as f2 ...
from MyTable
) NewName
jetzt kommt es noch darauf an, was du mit dem ganzen machen willst.
Einfacher ist es wirklich ohne derived Table, wenn die Felder nur 1 Mal benötig werden:
select sum( STD * (STS - STS / 100.00 * RAB + AUF / 100.00 * AUF) )
from MyFile
Je nachdem wie dein Rabatt oder Aufschlag wirken soll, musst du halt deine Klammern setzen. Einen Case sehe ich da i.M. gar nicht.