SQL 中的 SUBSTRING_INDEX 函数

2024 年 8 月 29 日 | 4 分钟阅读

SUBSTRING_INDEX 字符串函数显示给定字符串中指定符号之前的所有字符。

SUBSTRING_INDEX 字符串函数语法

语法 1:此语法将 SUBSTRING_INDEX 与 SQL 表的列名一起使用

在语法中,我们必须指定要对其执行 SUBSTRING_INDEX 字符串函数的列的名称。

语法 2:此语法将 SUBSTRING_INDEX 函数与字符串一起使用

SUBSTRING_INDEX 字符串函数示例

示例 1:以下 SELECT 查询显示了原始单词 JAVA^TPOINT 中给定符号之前的四个字符

SELECT SUBSTRING_INDEX( 'JAVA^TPOINT', '^', 1) AS SUBSTRING_INDEX_4_characters;

输出

SUBSTRING_INDEX_4_characters
JAVA

示例 2:以下 SELECT 查询显示了给定字符串的 SUBSTRING_INDEX 20 个字符

输出

SUBSTRING_INDEX_before.symbol
JAVATPOINT is a

示例 3:以下 SELECT 查询显示了给定“congratulations”单词中从第三个位置到给定符号的 5 个字符

输出

SUBSTRING_INDEX_before@symbol
NGRAT

示例 4:以下 SELECT 查询显示了给定字符串中从第五个位置到给定符号的 20 个字符

输出

SUBSTRING_INDEX_before#symbol
Delhi is the capital

示例 6:此示例在结构化查询语言中使用 SUBSTRING_INDEX 函数与表结合。

要理解 SQL 的 SUBSTRING_INDEX 函数,我们必须首先使用 CREATE 语句创建 SQL 表。在 SQL 数据库中创建新表的语法如下

以下CREATE语句创建了Student_Marks

以下INSERT查询将学院记录插入Student_Marks表中

以下SELECT语句显示了上面Student_Marks表的已插入记录


Schoolboy_IdSchoolboy_First_NameSchoolboy_Middle_NameSchoolboy_Last_NameSchoolboy_ClassSchoolboy_CitySchoolboy_StateSchoolboy_Marks
4001Ama.nRoySha#rma4昌迪加尔Pun#jab88
4002Vish.alGurrSh#arma8Murthal Harya#na95
4007Raj.singhaniaGupt#a6GhaziabadUttar Pr#adesh91
4004Yas.hChopraSingh#ania9斋浦尔Rajasthan#85
4011Vin.aySharmaRoy#8昌迪加尔Punjab#94
4006Man.ojSinghaniaGup#ta5GhaziabadUttar Pra#desh83
4010Ra.mRaheemGupt#a9勒克瑙Uttar Pr#adesh89

查询 1:以下 SELECT 查询在上述 Student_Marks 表的 Student_First_Name 列中使用了 SUBSTRING_INDEX 函数

此 SQL 语句显示了每个学生名字中从第一个位置到 # 符号的字符。

输出

Student_First_NameSUBSTRING_INDEX_before.symbol
Ama.nAma
Vish.alVish
Raj.Raj
Yas.hYas
Vin.ayVin
Man.ojMan
Ra.mRa

查询 2:以下 SELECT 查询在上述 Student_Marks 表的 Student_Last_Name 列中使用了 SUBSTRING_INDEX 函数

此 SQL 语句显示了每个学生姓氏中从第一个位置到 # 符号的字符。

输出

Student_Last_NameSUBSTRING_INDEX_before#symbol
Sha#rmaSha
Sh#armaSh
Gupt#aGupt
Singh#aniaSingh
Roy#Roy
Gup#taGup
Gupt#aGupt

查询 3:以下 SELECT 查询在上述 Student_Marks 表的 Student_Address 列中使用了 SUBSTRING_INDEX 函数

此 SQL 语句显示了每个学生州名中从第二个位置到给定符号的字符。

输出

Student_StateSUBSTRING_INDEX_@symbol
Pun@jabun
Harya@naarya
Uttar Pr@adeshttar Pr
Rajasthan@ajasthan
Punjab@unjab
Uttar Pra@deshttar Pra
Uttar Pr@adeshttar Pr