SQL 中的 SUBSTRING 函数

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

结构化查询语言 (SQL) 中的 SUBSTRING 字符串函数用于从原始字符串的特定索引值显示字符或子字符串。我们也可以将 SUBSTRING 函数与 SQL 表一起使用。

SUBSTRING 字符串函数语法

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

在 substring 函数的语法中,我们需要定义要对其执行操作的列名。这里的 Length_of_string 参数是可选的。如果省略该参数,则此函数将显示从起始索引值开始的整个字符串。

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

语法 3:此语法将 SUBSTRING 函数与单个字符一起使用

SUBSTRING 字符串函数示例

示例 1:以下 SELECT 查询显示了给定字符串中第 17 个位置的字符。

此 SQL 查询在字符串中第 17 个位置之后返回 25 个字符(包括空格)。

输出

substring_17_25
面向专业人士的网站

示例 2:以下 SELECT 查询显示了给定字符串中第 -16 个位置的字符

此 SQL 查询显示了字符串中从倒数第 16 个位置开始的五个字符。

输出

substring_-16_5
or pr

示例 3:以下 SELECT 查询显示了字符串中第 5 个位置之后的所有字符。

输出

substring_5
Delhi IS the Capital OF India

示例 4:以下 SELECT 查询显示了字符串中第 6 个位置的单个字符。

输出

substring_6_1
o

示例 5:此示例将 SUBSTRING 函数与 SQL 表一起使用

在此示例中,我们将创建一个新的 SQL 表,并在其上执行 SUBSTRING 函数。

在 SQL 数据库中创建新表的语法如下

以下 CREATE 语句创建了 Student_Grade

以下 INSERT 查询在 Student_Grade 表中插入了学生成绩和分数记录

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


Roll_No名字姓氏First_CitySecond_CityNew_CityHindi_MarksMaths_Marks级别
10阿曼Sharma勒克瑙昌迪加尔Ghaziabad8895A2
02VishalSharma昌迪加尔GhaziabadGhaziabad9582A1
07Raj古普塔德里Ghaziabad勒克瑙9195A1
04YashSinghaniaGhaziabad德里勒克瑙8582A2
11VinayRoy德里KanpurGhaziabad9597A1
16马诺吉古普塔GhaziabadMeerut昌迪加尔9590B1
19Ram古普塔勒克瑙Ghaziabad昌迪加尔8995A2

查询 1:以下 SELECT 查询将 SUBSTRING 函数与上面 Student_Grade 表的 Last_Name 列一起使用

此 SQL 语句显示了每个学生姓氏从第 2 个位置开始的四个字符。

输出

姓氏SUBSTRING_2_4
Sharmaharm
Sharmaharm
古普塔upta
Singhaniaingh
Royoy
古普塔upta
古普塔upta

查询 2:以下 SELECT 查询将 SUBSTRING 函数与上面 Student_Grade 表的 Last_Name 列一起使用

此 SQL 语句显示了每个学生姓氏从倒数第 3 个位置开始的两个字符。

输出

姓氏SUBSTRING_-3_2
Sharmarm
Sharmarm
古普塔pt
Singhaniani
RoyRo
古普塔pt
古普塔pt