sql >> Database teknologi >  >> RDS >> Mysql

Sådan polstres en streng med ledende/efterfølgende tegn i MySQL – LPAD(), RPAD()

Nogle gange skal du polstre en snor med mellemrum. Eller måske vil du fylde det med en anden karakter. Nogle gange skal du polstre den til venstre. Andre gange skal du polstre den til højre. Eller måske skal du polstre det på begge sider.

Alt ovenstående kan gøres i MySQL ved hjælp af LPAD() og/eller RPAD() strengfunktioner.

Syntaks

Syntaksen for hver af disse funktioner ser sådan ud:

LPAD(str,len,padstr)
RPAD(str,len,padstr)

Hvor str er den streng, der skal udfyldes, len er den ønskede længde af strengen i tegn efter al udfyldning er blevet anvendt, og padstr er den streng, den skal polstres med.

Eksempel – LPAD()

Her er et eksempel på udfyldning af venstre side af en streng:

SELECT LPAD('Cat', 6, '*') AS Result;

Resultat:

+--------+
| Result |
+--------+
| ***Cat |
+--------+

I dette eksempel udfylder vi strengen med stjernetegnet (* ). Vi specificerer også 6 , hvilket betyder, at hele strengen skal ende med at være 6 tegn lang, efter at al polstring er blevet påført.

Så hvis vi ændrer 6 for at sige 10 , her er hvad der sker:

SELECT LPAD('Cat', 10, '*') AS Result;

Resultat:

+------------+
| Result     |
+------------+
| *******Cat |
+------------+

Eksempel – RPAD()

RPAD() funktion fungerer nøjagtigt det samme som LPAD() , med den undtagelse, at den tilføjer tegnene til højre side af strengen:

SELECT RPAD('Cat', 6, '*') AS Result;

Resultat:

+--------+
| Result |
+--------+
| Cat*** |
+--------+

Eksempel – Begge

Du kan bruge begge funktioner sammen til at polstre en snor på begge sider. For at gøre dette skal du blot overføre den ene funktion til den anden som et argument.

Sådan:

SELECT LPAD(RPAD('Cat', 6, '*'), 9, '*') AS Result;

Resultat:

+-----------+
| Result    |
+-----------+
| ***Cat*** |
+-----------+

Flere tegn

Du er ikke begrænset til kun en enkelt karakter. Du kan fylde en streng med et vilkårligt antal tegn. Her er et eksempel:

SELECT RPAD('She Loves Me ', 30, 'Yeah! ') AS Result;

Resultat:

+--------------------------------+
| Result                         |
+--------------------------------+
| She Loves Me Yeah! Yeah! Yeah! |
+--------------------------------+


  1. Nedetid og Hotpatch-anvendelsestilstand i adop R12.2

  2. Hurtigt at finde forskellige værdier

  3. Der opstod en fejl under installationen af ​​pg (0.17.1), og Bundler kan ikke fortsætte

  4. Tjek for mislykket e-mail i SQL Server (T-SQL)