MySQL LEFT() 函数
MySQL LEFT() 函数接受一个字符串值和一个数值(例如 N),并从左到右返回最多 N 个字符的指定字符串。
当您想从字符串左端提取一定数量的字符时,此函数非常有用。它可用于各种场景,例如从字符串左端提取文件扩展名、区号或任何其他文本字符串。
语法
以下是 MySQL LEFT() 函数的语法 -
LEFT(str,len)
参数
此函数接受一个字符串和指定数量的字符作为参数。
返回值
此函数返回字符串最左侧指定长度的部分。
示例
在下面的示例中,我们从字符串"TUTORIALSPOINT"的左侧提取前 5 个字符 -
SELECT LEFT('TUTORIALSPOINT', 5);
以下是上述代码的输出 -
| LEFT('TUTORIALSPOINT', 5) |
|---|
| TUTOR |
示例
如果此函数的第二个参数大于给定字符串的长度,则返回原字符串,不做任何修改 -
SELECT LEFT('TUTORIALSPOINT', 20);
获得的输出如下 −
| LEFT('TUTORIALSPOINT', 20) |
|---|
| TUTORIALSPOINT |
示例
当第二个参数为负值时,函数返回空字符串 −
SELECT LEFT('TUTORIALSPOINT', -4);
我们得到如下输出 -
| LEFT('TUTORIALSPOINT', -4) |
|---|
示例
如果传递给此函数的任何参数为 NULL,则返回 NULL -
SELECT LEFT(NULL, 5);
结果如下所示 -
| LEFT(NULL, 5) |
|---|
| 0x |
示例
您也可以将数值传递给此函数 -
SELECT LEFT(763275825171, 6);
生成的结果如下所示 -
| LEFT(763275825171, 6) |
|---|
| 763275 |
示例
您还可以将表列的名称传递给此函数,并在其中打印所需的字符。
让我们创建一个名为"EMP"的表,并使用 CREATE 和 INSERT 语句向其中插入记录,如下所示 -
CREATE TABLE EMP( FIRST_NAME CHAR(20) NOT NULL, LAST_NAME CHAR(20), AGE INT, INCOME FLOAT );
现在,让我们使用 INSERT 语句将记录插入其中 -
INSERT INTO EMP VALUES
('Krishna', 'Sharma', 19, 2000),
('Raj', 'Kandukuri', 20, 7000),
('Ramya', 'Ramapriya', 25, 5000),
('Mac', 'Mohan', 26, 2000);
获得的EMP如下-
| FIRST_NAME | LAST_NAME | AGE | INCOME |
|---|---|---|---|
| Krishna | Sharma | 19 | 2000 |
| Raj | Kandukuri | 20 | 7000 |
| Ramya | Ramapriya | 25 | 5000 |
| Mac | Mohan | 26 | 2000 |
以下查询使用 LEFT() 函数检索"FIRST_NAME"列的前 3 个字符 -
SELECT FIRST_NAME, LAST_NAME, AGE, LEFT(FIRST_NAME, 3) as RESULT FROM EMP;
执行上述代码后,我们得到以下输出 -
| FIRST_NAME | LAST_NAME | AGE | LEFT(FIRST_NAME, 3) |
|---|---|---|---|
| Krishna | Sharma | 19 | Kri |
| Raj | Kandukuri | 20 | Raj |
| Ramya | Ramapriya | 25 | Ram |
| Mac | Mohan | 26 | Mac |
mysql-left-function.html