phpbar.de logo

Mailinglisten-Archive

[php] =?iso-8859-1?Q?Re:_=5Bphp=5D_OT_=5BmySQL=5D:_Werte_auf_feste_L= E4nge_?= =?iso-8859-1?Q?bring=3F_=3D_=3D=3Fiso-8859-1=3FQ=3Fen?=

[php] =?iso-8859-1?Q?Re:_=5Bphp=5D_OT_=5BmySQL=5D:_Werte_auf_feste_L= E4nge_?= =?iso-8859-1?Q?bring=3F_=3D_=3D=3Fiso-8859-1=3FQ=3Fen?=

Markus Stanczyk php_(at)_phpcenter.de
Mon, 29 Jul 2002 18:47:25 +0200


Hallo,
>
> gibt es eine Möglichkeit einen Wert bei der mySQL-Ausgabe auf eine feste
> Länge zu bringen?
>
> Zur Zeit verwende ich z.B. sowas:
> substring(concat(wert,space(30)),1,30) as wert
>
> Das funktioniert zwar wenn ich den Wert mit Leerzeichen auffüllen möchte.
> Klar kann man repeat(filler,x) verwenden um dies mit anderen Zeichen zu
tun
> aber gibt es evtl. eine fertige Funktion welche man aufrufen kann?
>
> Praktisch wäre z.B. auch wenn man angeben könnte ob der Wert am Anfang
oder
> am Ende mit dem Zeichen gefüllt werden soll. Praktisch z.B. bei Zahlen (45
> => 00045)

Du meinst sicher dieses:

LPAD(zeichenkette,laenge,fuellzeichenkette)
Gibt die Zeichenkette zeichenkette zurück, links aufgefüllt mit der
Zeichenkette fuellzeichenkette, bis zeichenkette laenge Zeichen lang ist.
Wenn zeichenkette länger als laenge ist, wird sie auf laenge Zeichen
verkürzt.
  mysql> select LPAD('hi',4,'??');
        -> '??hi'

RPAD(zeichenkette,laenge,fuellzeichenkette)
Gibt die Zeichenkette zeichenkette zurück, rechts aufgefüllt mit der
Zeichenkette fuellzeichenkette, bis zeichenkette laenge Zeichen lang ist.
Wenn zeichenkette länger als laenge ist, wird sie auf laenge Zeichen
verkürzt.
  mysql> select RPAD('hi',5,'?');
        -> 'hi???'

Gruß

Markus Stanczyk


php::bar PHP Wiki   -   Listenarchive