Autor Zpráva
Kostej
Profil *
Zdravím,

potřebuji na úrovni databáze odečíst výsledky dvou selectů, ale mám k dispozici pouze mySQL 4.0.24, takže bez poddotazů.

Zjednodušenně potřebuji toto:

(select sum(sloupec) from tab1 where ...) - (select sum(sloupec2) from tab2 where...)

Nevíte někdo o nějakém řešení?
Joker
Profil
Kostej
Upozorňuju, že jenom tipuju, ale co to zkusit nějak takhle:
SELECT (sum(t1.sloupec) - sum(t2.sloupec)) as rozdil from tab1 t1, tab2 t2 where t1.neco = neco OR t2.neco = neco
Kostej
Profil *
Joker

Asi mi nic jiného než to "joinout" nezbyde, výkon sice nic moc, ale tohle určitě půjde. Díky moc za radu.
Joker
Profil
Akorát to co jsem napsal výše udělá kartézský součin těch tabulek... chtělo by to ještě upravit, aby každý záznam z těch jednotlivých tabulek byl ve výsledné tabulce jen jednou
Kajman_
Profil *
Asi bych to zkusil pomocí více dotazů s použitím proměnné.

select @soucet:=sum(sloupec) from tab1 where ...;
select @soucet:=@soucet+sum(sloupec2) from tab2 where...;
Toto téma je uzamčeno. Odpověď nelze zaslat.

0