MySql: sum geht nicht mit Subselects?
Thomas
- datenbank
Hi
Ich komm bei einem eigentlich einfachen Select nicht mehr weiter - verzweifle langsam. :(
Vielleicht könnt ihr mir ja helfen... ;)
Folgender Select gibt mir keine row, obwohl er sollte (Fehlermeldung gibts keine):
select tab1.name, sum(tab1.wert)
from tab1
where exists (select tab2.id from tab2 where tab2.id = tab1.id)
group by tab1.name
das komische ist, wenn ich den Subselect in den Select nehme, kriege ich ne row - mit dem richtigen ergebenis:
select tab1.name, sum(tab1.wert), (select tab2.id from tab2 where tab2.id = tab1.id)
from tab1
group by tab1.name
Warum geht das in der where-klausel nicht, wenn es doch offenbar im select das richtige selektiert!?
Ich hab MySql 5.0.41
ps: natürlich könnte man den select auch einfacher schreiben, aber im original gehts nicht. dieser select ist bis aufs nötigste gekürzt, so dass man den "fehler" immer noch nachvollziehen kann.