Matze: UNION Verständnisproblem

Beitrag lesen

Hey!

(SELECT MAX(Einwohnerzahl) FROM Kommune1 WHERE Timestamp < NOW -1 MONTH) UNION (SELECT MAX(Einwohnerzahl) FROM Kommune2 WHERE Timestamp < NOW -5 MONTHS)


>   
> bezogen auf deine abfrage bedeutet das, dass du je nach abhängigkeit der jeweiligen ergebnise von MAX(Einwohnerzahl) zwei datensätze als ergebnis zurück bekommen kannst, wenn die werte unterschiedlich sind. oder aber nur einen datensatz, wenn die werte genau gleich sind.  
> UNION ALL macht das gleiche wie UNION, nur mit dem unterschied, dass er eben nicht nach genau gleichen werten sucht, die es dann nur einmal anzeigt. mit UNION ALL würde also deine abfrage IMMER zwei datensätze zurück liefern, egal ob die werte gleich sind oder nicht und ist somit auch weniger arbeit für das dbms. also je nach bedarf, sollte man UNION oder UNION ALL verwerden.  
  
Danke für deine ausführliche Erklärung!  
Also ich bräuchte schon 2 Datensätze, auch wenn sie identisch sind.  
Bzw könnte ich mir den fehlenden Datensatz auch selbst basteln indem ich feststelle ob nur 1 zurück gegeben wurde und daraus dann schlussfolgern, dass der andere den selben Inhalt hätte. Oder ich benutze UNION ALL.  
  
Nochmals Danke!  
  
Gruß, Matze