Hi,
Wenn ich das jetzt benutze, werden allerdings alle Beträge linksbündig angeordnet, was bei vielen Datensätzen mit unterschiedlich langen Zahlen etwas bescheuert aussieht...
Es ist nicht Aufgabe der Query, irgendwas schön lesbar zu formatieren, die hat nur die Daten zu liefern.
Die Ausgabe wirst du doch sowieso nachgelagert in einem Script machen, oder etwa nicht? Dann formatiere da wie gewünscht.
Wenn ich DECIMAL benutze und mit UNION die Abfragen kombiniere, sind alle Felder mit reinen Zahlen linksbündig angeordnet, auch die reinen Integer wie Rechnunsnummer oder Kundennummer.
Für INT kennt MySQL zwar das Attribut ZEROFILL, bzw. bei fehlen von diesem füllt es Zahlen automatisch bis zur angegebenen Länge mit Spaces auf, aber:
Note
The ZEROFILL attribute is ignored when a column is involved in expressions or UNION queries.
(http://dev.mysql.com/doc/refman/5.1/en/numeric-types.html)
Du könntest natürlich das ganze als Subquery nutzen und noch mal in ein weiteres SELECT „verpacken“, in dem du dann mittels Stringfunktionen und ggf. CASTs das ganze noch optisch „aufbereitest“ - aber das ist m.E. nicht mehr wirklich der Sinn von SQL.
MfG ChrisB
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?