sql >> Database >  >> RDS >> Mysql

Hoe de LPAD()-functie werkt in MySQL

In MySQL is de LPAD() Met deze functie kunt u het linkergedeelte van een tekenreeks opvullen met een of meer tekens.

De manier waarop het werkt, is dat u de tekenreeks opgeeft die moet worden ingevuld, de lengte van de opvulling en de tekenreeks die voor de opvulling moet worden gebruikt.

Syntaxis

De syntaxis gaat als volgt:

LPAD(str,len,padstr)

Waar str is de tekenreeks die moet worden ingevuld, len is de gewenste lengte van de tekenreeks in tekens nadat alle opvulling is toegepast, en padstr is de tekenreeks om het mee op te vullen.

Voorbeeld 1 – Basisgebruik

Hier is een voorbeeld van het opvullen van het linkerdeel van een tekenreeks met het asterisk-teken:

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

Resultaat:

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

In dit voorbeeld is het tweede argument 6 , wat betekent dat de hele string uiteindelijk 6 tekens lang moet zijn nadat alle opvulling is toegepast. Het derde argument specificeert welk teken moet worden gebruikt voor de opvulling.

Dus in dit geval, als we maar één sterretje willen, kunnen we dit doen:

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

Resultaat:

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

Voorbeeld 2 – Meerdere tekens

Je bent niet beperkt tot slechts een enkel teken. U kunt een string met een willekeurig aantal tekens opvullen.

We kunnen bijvoorbeeld het vorige voorbeeld nemen en een spatie toevoegen na de asterisk:

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

Resultaat:

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

Merk op dat we ook het aantal tekens hebben verhoogd tot 5 om plaats te bieden aan het extra karakter.

Hier is nog een voorbeeld waarin verschillende tekens worden gebruikt:

SELECT LPAD('!', 15, 'Blah ') AS Result;

Resultaat:

+-----------------+
| Result          |
+-----------------+
| Blah Blah Blah! |
+-----------------+

Voorbeeld 3 – Tweede argument is te klein

Als de waarde van het tweede argument te klein is, kan het zijn dat u geen opvulling krijgt:

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

Resultaat:

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

In andere gevallen zou je kunnen eindigen met het afknippen van de opvulstring, of zelfs de originele string kort:

SELECT 
  LPAD('Cat', 6, 'Puddy '),
  LPAD('Cat', 2, 'Puddy ');

Resultaat:

+--------------------------+--------------------------+
| LPAD('Cat', 6, 'Puddy ') | LPAD('Cat', 2, 'Puddy ') |
+--------------------------+--------------------------+
| PudCat                   | Ca                       |
+--------------------------+--------------------------+

Merk op dat deze voorbeelden alleen voor demonstratiedoeleinden zijn. In de meeste gevallen zou u LPAD() . niet gebruiken om eenvoudig twee woorden samen te voegen. Om dat te doen, kunt u beter CONCAT() . gebruiken in plaats daarvan.

Voorbeeld 4 – Een databasevoorbeeld

Hier is een voorbeeld van het selecteren van gegevens uit een database en deze aan de linkerkant opvullen:

SELECT Genre, LPAD(Genre, 10, '.')
FROM Genres;

Resultaat:

+---------+----------------------+
| Genre   | LPAD(Genre, 10, '.') |
+---------+----------------------+
| Rock    | ......Rock           |
| Jazz    | ......Jazz           |
| Country | ...Country           |
| Pop     | .......Pop           |
| Blues   | .....Blues           |
| Hip Hop | ...Hip Hop           |
| Rap     | .......Rap           |
| Punk    | ......Punk           |
+---------+----------------------+


  1. Gebruiksscenario's voor SQL Server MERGE-instructie:online synchroniseren en geschiedenistabellen

  2. Voormalig Capgemini Executive, Sunitha Ray, sluit zich aan bij ScaleGrid DBaaS om Enterprise Sales uit te breiden

  3. Controleer de ruimte die wordt gebruikt door een tabel in SQL Server

  4. De verbinding tussen client en server configureren Oracle 10g