Wie zu Recht-richten Sie eine Spalte bei der Auswahl von Daten?
Eine Schule Zuordnung, die ich arbeite, sagt zum format einer Dezimalzahl(14,0) - Spalte "als Währung [US - $xxx,xxx] und Rechtsbündig [alle Kommas, die vertikal]."
Kann ich wählen Sie die Daten in das richtige format mit diesem:
CONCAT("US$", FORMAT(theColumn, 0))
Aber die Daten werden nicht richtig gerechtfertigt. Ich habe gesucht und gesucht und einfach nicht in der Lage gewesen zu finden, jeder Weg zum rechten rechtfertigen die Ausgabe.
Habe ich eine Antwort darauf finden, hier, der zeigt, wie es zu tun, wenn die Spalte den Typ string und hat eine Feste Breite, aber ich kann nicht einen Weg finden, zu Recht rechtfertigen die Ausgabe für einen decimal-Datentyp. Ist es möglich?
EDIT:
MySQL gibt Daten Links ausgerichtet ist, wie dieser:
US$18,100,000,000
US$130,100,000,000
US$1,200,000,000
Möchte ich wählen Sie es richtig begründet, wie diese:
US$18,100,000,000
US$130,100,000,000
US$1,200,000,000
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich denke, die folgende Abfrage ist die Antwort auf Ihre Frage.
Da die maximale Länge einer DEZIMALZAHL(14,0) Typ repräsentiert mit Separatoren ist 18 Sie haben, um herauszufinden, wie viele Räume Sie brauchen, um hinzuzufügen, vor jedem verkettete Ergebnis. Ich berechne die Anzahl der Ziffern der Zahl, so ist die Anzahl der Kommas ((Länge der Zahl -1) DIV 3) und schließlich die Anzahl der Leerzeichen Hinzugefügt werden (18 - numberlength - separatorslength).Hoffe ich bin nicht etwas fehlt.
Ich denke, Sie wollen
wobei x die Anzahl der Orte, die Sie wollen, dass der Wert, den Sie ausfüllen (also sagen wir 8 Plätze)
Hätte ich das getan:
Was dieser nicht vorhanden ist, wird die Ausgabe in eine Spalte mit 20 Zeichen, padding '' auf der linken Seite der Werte.