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.htm
廣告