MySQL 中的 MID()函数
中() :
这个 MySQL 中的函数用于从给定的输入字符串中提取子字符串。如果起始位置为正数,则将从起始索引中提取给定长度的子串。如果为负,则将从结束索引中提取给定长度的子字符串。
句法 :
MID(str,pos,len)
参数 :
该函数接受 3 个参数。
- 字符串 –
我们要从中提取子字符串的字符串。 - 位置 –
它指示在输入字符串中开始提取的位置。 - 连——
它表示我们要提取的字符串的长度。
回报:
它从给定的输入字符串中提取子字符串。
示例-1:
借助从位置 1 开始的 MID函数,从字符串'geeksforgeeks' 中提取长度为 5 的字符串。
SELECT MID('geeksforgeeks', 1, 5) As SUBSTRING;
输出 :SUBSTRING geeks
示例 2 :
借助从 pos -3 开始的 MID函数,从字符串“Learning MySQL is fun”中提取长度为 3 的字符串。
SELECT MID('Learning MySQL is fun', -3, 3) As SUBSTRING;
输出 :SUBSTRING fun
示例 3 :
MID函数也可用于列数据。
创建学生表 -
CREATE TABLE StudentDetails
(
Student_id INT AUTO_INCREMENT,
Student_name VARCHAR(100) NOT NULL,
Roll INT NOT NULL,
Department VARCHAR(10) NOT NULL,
PRIMARY KEY(Student_id )
);
将值插入表中 -
INSERT INTO StudentDetails
(Student_name ,Roll, Department )
VALUES
('Anik Biswas ',10100,'CSE'),
('Bina Mallick', 11000,'ECE' ),
('Niket Sharma', 12000,'IT' ),
('Sayan Samanta',13000, 'ME' ),
('Riya Shah ', 14000,'EE' ),
('Bipin Kohli', 15000,'CE' );
该表将如下所示。
SELECT * from StudentDetails;
STUDENT_ID | STUDENT_NAME | ROLL | DEPARTMENT |
---|---|---|---|
1 | Anik Biswas | 10100 | CSE |
2 | Bina Mallick | 11000 | ECE |
3 | Niket Sharma | 12000 | IT |
4 | Sayan Samanta | 13000 | ME |
5 | Riya Shah | 14000 | EE |
6 | Bipin Kohli | 15000 | CE |
现在,我们将在 Student_name 列上使用 MID函数来查找每个学生的名字。
SELECT Student_id , MID(Student_name,1,5 ) AS First_Name,
Student_name ,Roll,Department FROM StudentDetails;
输出 :STUDENT_ID FIRST_NAME STUDENT_NAME ROLL DEPARTMENT 1 Anik Anik Biswas 10100 CSE 2 Bina Bina Mallick 11000 ECE 3 Niket Niket Sharma 12000 IT 4 Sayan Sayan Samanta 13000 ME 5 Riya Riya Shah 14000 EE 6 Bipin Bipin Kohli 15000 CE