MySQL LPAD() 函数



MySQL 的LPAD()函数用于向字符串的左侧添加填充,直到达到所需的长度。

语法

以下是 MySQL LPAD() 函数的语法:

LPAD(str,len,padstr)

参数

以下是此函数接受的参数:

  • str 是需要添加填充的原始字符串。

  • len 是字符串所需的长度,直到需要添加填充为止。

  • padstr 是需要用作填充的字符串。

返回值

此函数返回一个新的字符串,该字符串在左侧用指定的填充字符串填充,以达到指定的长度。

示例

在下面的示例中,我们使用 LPAD() 函数将美元符号 ('$') 作为填充添加到字符串 'Tutorialspoint' 的左侧,直到其长度达到 25:

SELECT LPAD('Tutorialspoint', 25,'$');

以下是上述代码的输出:

LPAD('Tutorialspoint', 25,'$')
$$$$$$$$$$$Tutorialspoint

示例

您还可以使用 LPAD() 向数值添加填充,如下例所示:

SELECT LPAD(22556, 30,'%%@');

获得的输出如下:

LPAD(22556, 30,'%%@')
%%@%%@%%@%%@%%@%%@%%@%%@%22556

示例

填充字符串也可以是一个数字,如下所示:

SELECT LPAD('Tutorialspoint', 30, 0);

我们得到以下输出:

LPAD('Tutorialspoint', 30, 0)
0000000000000000Tutorialspoint

示例

如果原始字符串长于给定的长度,则将其截断以匹配所需的长度:

SELECT LPAD('Tutorialspoint', 5, '*' );

以下是上述代码的输出:

LPAD('Tutorialspoint', 5, '*' )
Tutor

示例

如果传递给此函数的任何参数为 NULL,则返回 NULL:

SELECT LPAD('Tutorialspoint', 25, NULL);

生成的結果如下所示:

LPAD('Tutorialspoint', 25, NULL)
NULL

示例

您还可以使用此函数向表中列的值的左侧添加填充。

让我们创建一个名为“PLAYERS”的表,并使用 CREATE 和 INSERT 语句向其中插入记录,如下所示:

CREATE TABLE PLAYERS(
   ID INT,
   First_Name VARCHAR(255),
   Last_Name VARCHAR(255),
   Date_Of_Birth date,
   Place_Of_Birth VARCHAR(255),
   Country VARCHAR(255),
   PRIMARY KEY (ID)
);

现在,让我们使用 INSERT 语句向其中插入记录:

INSERT INTO PLAYERS VALUES
(1, 'Shikhar', 'Dhawan', DATE('1981-12-05'), 'Delhi', 'India'),
(2, 'Jonathan', 'Trott', DATE('1981-04-22'), 'CapeTown', 'SouthAfrica'),
(3, 'Kumara', 'Sangakkara', DATE('1977-10-27'), 'Matale', 'Srilanka'),
(4, 'Virat', 'Kohli', DATE('1988-11-05'), 'Delhi', 'India'),
(5, 'Rohit', 'Sharma', DATE('1987-04-30'), 'Nagpur', 'India'),
(6, 'James', 'Anderson', DATE('1982-06-30'), 'Burnley', 'England');

获得的 PLAYERS 表如下所示:

ID First_Name Last_Name Date_Of_Birth Place_Of_Birth Country
1 Shikhar Dhawan 1981-12-05 Delhi India
2 Jonathan Trott 1981-04-22 CapeTown SouthAfrica
3 Kumara Sangakkara 1977-10-27 Matale Srilanka
4 Virat Kohli 1988-11-05 Delhi India
5 Rohit Sharma 1987-04-30 Nagpur India
6 James Anderson 1982-06-30 Burnley England

以下查询将字符串**---**作为填充添加到FIRST_NAME列中的实体,并保持25个字符的一致长度:

SELECT ID, First_Name, Last_Name, Country, LPAD(First_Name, 25, '**---**') as RESULT 
FROM PLAYERS;

执行上述代码后,我们将获得以下输出:

ID First_Name Last_Name Country 结果
1 Shikhar Dhawan India **---****---****--Shikhar
2 Jonathan Trott SouthAfrica **---****---****-Jonathan
3 Kumara Sangakkara Srilanka **---****---****---Kumara
4 Virat Kohli India **---****---****---*Virat
5 Rohit Sharma India **---****---****---*Rohit
6 James Anderson England **---****---****---*James
mysql-lpad-function.htm
广告
© . All rights reserved.