Select + select + select
am 13.01.2008 17:11:21 von Kay Schulz
Hallo zusammen,
ich habe mehrere selects addiert, aber jetzt ist es so kompliziert,
dass ich es nicht hinbekomme.
Ich bin bis zu zwei einzelnen Statements gekommen. Die will ich
im Prinzip addieren (besser gesagt, Statement 1 mal 2 + Statement 2).
Wie mache ich das?
Auch sonstige Vereinfachungen sind willkommen.
Statement 1:
select sum(wert) + (select COALESCE(sum(case when reinraus='in' then
wert else -wert end), 0) from GV where W='E' and
month(datum)=month(curdate())) from KS where W='E' and
month(datum)=month(curdate());
Statement 2:
select sum(wert) + (select COALESCE(sum(case when reinraus='in' then
wert else -wert end), 0) from GV where W='C' and
month(datum)=month(curdate())) from KS where W='C' and
month(datum)=month(curdate());
Grüsse
Kay
Re: Select + select + select
am 13.01.2008 17:15:48 von Claus Reibenstein
Kay Schulz schrieb:
> ich habe mehrere selects addiert
Was meinst Du damit?
> select sum(wert) + (select COALESCE(sum(case when reinraus='in' then
> wert else -wert end), 0) from GV where W='E' and
> month(datum)=month(curdate())) from KS where W='E' and
> month(datum)=month(curdate());
Kannst Du das bitte mal so formatieren, dass auch ein Mensch das versteht?
Gruß. Claus
Re: Select + select + select
am 13.01.2008 19:51:13 von Kay Schulz
Claus Reibenstein schrieb:
> Kay Schulz schrieb:
>
>> ich habe mehrere selects addiert
>
> Was meinst Du damit?
Hallo Claus,
die gelieferten Zahlen (summe) zweier Select Statements.
>
>> select sum(wert) + (select COALESCE(sum(case when reinraus='in' then
>> wert else -wert end), 0) from GV where W='E' and
>> month(datum)=month(curdate())) from KS where W='E' and
>> month(datum)=month(curdate());
>
> Kannst Du das bitte mal so formatieren, dass auch ein Mensch das versteht?
>
:-)
Ich probiere es mal...
Statement 1:
select sum(wert) +
(select COALESCE(sum(case when reinraus='in' then wert else -wert
end), 0)
from GV where W='E' and month(datum)=month(curdate()))
from KS where W='E' and month(datum)=month(curdate());
Statement 2:
select sum(wert) +
(select COALESCE(sum(case when reinraus='in' then wert else -wert
end), 0)
from GV where W='C' and month(datum)=month(curdate()))
from KS where W='C' and month(datum)=month(curdate());
Besser?
Kay