yo Philipp,
Dann wird 1 nicht mehr als internes Attributalias, sondern als Zahl
eines algebraischen Ausdrucks gewertet. Soweit zumindest meine
Vermutung und Schlüsse aus meiner Beobachtung.
wenn ich das mit den ganzzahlen richtig verstanden habe, sollten die immer einen bezug auf die spalten nach dem SELECT haben, ganz ähnlich der syntax mit ORDER BY, sprich die 1 für die erste spalte, 2 für die zweite etc. insofern sollte es eigentlich immer als ein "zahlen-alias" stehen. insofern werde ich noch nicht ganz schlau draus, was dort ein 1+1 bewirkt. meiner meinung würde das die spalte 2 als alias ansprechen sollen...
Obwohl, dass was MySQL in diesem Zusammenhang macht, grenzt schon
fast an schwarze Magie
nun, ich bin wirklich kein abergläubiger mensch. aber mich wundert das noch in einem anderen zusammenhang.
<zitat mysql doku>
Wenn Sie in einem Statement eine Gruppierungsfunktion benutzen, die keine GROUP BY-Klausel enthält, ist das gleichbedeutend mit der Gruppierung aller Zeilen.
<zitat ende>
das an sich ist keine überraschung, vielmehr bin ich davon ausgegangen. wird kein group by angebeben und die aggregat-funktion count(*) benutzt, dann handelt es sich a) um eine gruppierung über die gesamte tabelle und b) wird der wert 0 zurückgegeben, wenn die tabelle leer ist.
benutzt man aber nun explizit ein group by, dann wird bei einer leeren ergebnistabelle keine wert bei count(*) zurück gegeben. das hat mich doch bei dem obigen zitat verwundert.
Ilja