SQL 字符串函数:概述

已发表: 2022-05-24

无论返回值的数据类型如何,都接受字符串值作为输入的函数称为字符串函数。 SQL Server 中有大量内置的 SQL 字符串函数供开发人员使用。 本文将列出最常用的 SQL 字符串函数,这些函数使 SQL 编程更容易。

目录

常用的 SQL 字符串函数

ASCII

我们将看到的第一个 SQL 字符串函数是 ASCII()。 此标量函数通过接受给定字符串作为输入并返回该字符串中第一个字符的相应 ASCII 代码来工作。 使用这个 SQL 字符串函数,我们可以找出字符串最左边字符的数值。 如果字符串为空,则返回 0。如果字符串为空,函数将返回 NULL 作为输出。

在 ASCII 功能下,可以识别数值范围为 0 到 255 的字符。

长度()

使用此函数,可以找到以字符计算的字符串长度。 多字节字符被视为单个字符。 这意味着函数 LENGTH() 将输出 20 作为包含十个两字节字符的字符串,而 CHAR LENGTH() 返回 10。

康卡特

CONCAT() 是另一个标量 SQL 字符串函数,它接受多个字符串作为输入,并在将它们全部连接后返回单个字符串作为输出。

可能有一个或多个论点。 此功能最多允许 254 个输入。 如果所有输入参数都是非二进制字符串,则 CONCAT SQL 的结果将是一个非二进制字符串。 但是,如果任何参数是二进制字符串,则结果是二进制字符串。 如果您不希望数字输入参数返回其对应的二进制文本。

CONCAT_WS()

CONCAT WS() 是 CONCAT 的一种特殊形式,代表 Concatenate With Separator ()。 它与 CONCAT() 函数相同,不同之处在于它允许您在连接的文本之间定义分隔符。 它可用于创建以逗号分隔的值。 第一个参数用作其他参数之间的分隔符。

在要连接的字符串之间,添加一个分隔符。 与其他输入一样,分隔符可以是字符串。 如果分隔符为 NULL,则答案为 NULL。

修剪

TRIM() 函数从字符串中删除所有前缀和后缀。 如果没有指定说明符 BOTH、LEADING 或 TRAILING,则假定 BOTH。 如果没有另外提及,空格将被删除。 下面是一个示例来说明 TRIM 函数:

SQL> SELECT TRIM('条');

+————————————————————+

| TRIM('狗') |

+————————————————————+

| 狗 |

+————————————————————+

一组中的 1 行(0.00 秒)

SQL> SELECT TRIM(LEADING 'r' FROM 'rrrrrrdogrrrrr');

+————————————————————+

| TRIM(前导 'r' 来自 rrrrr'dogrrrrr') |

+————————————————————+

| 狗拉拉 |

+————————————————————+

一组中的 1 行(0.00 秒)

SQL> SELECT TRIM(BOTH 'rx' FROM 'rrrrrrdogrrrrr'');

+————————————————————+

| 修剪(两个'r'来自'rrrrrrdogrrrrr')|

+————————————————————+

| 狗 |

+————————————————————+

一组中的 1 行(0.00 秒)

SQL> SELECT TRIM(TRAILING 'xyz' FROM 'dogrrrrxyz');

+————————————————————+

| 修剪(尾随 'xyz' 从 'dogrrrrrrxyz') |

+————————————————————+

| 狗拉拉 |

+————————————————————+

一组中的 1 行(0.00 秒)

声音()

SOUNDEX() 是一维标量函数。 SOUNDEX() 主要用于匹配字符串并将行链接在一起。 对于听起来几乎相同的两个字符串,Soundex 字符串应该相同。 它将一个字符串作为输入,并根据该字符串的发音方式生成一个四字符的字符串。

但是,SOUNDEX() 函数返回一个有点长且随机长度的字符串。 要获得典型的 Soundex 字符串,请对结果使用 SUBSTRING()。 代码的第一个字符从输入字符串的第一个字符转换为大写。

代码的剩余字符是表示表达式字母的整数。 A、O、U、E、I、Y、H、W)是唯一未被忽略的字母(除非它们是首字母)。 如果字符串长度小于 4,则在返回的结果中附加额外的零。在 AZ 范围之外,所有国际字母都被视为元音。

小写大写

用于更改输入字符串的字符大小写的典型 SQL 字符串函数是 LOWER() 和 UPPER() 函数。 函数 LOWER() 和 UPPER() 分别用于将字母大小写修改为小写和大写。

左右

最常用的 SQL 字符串函数之一是 LEFT() 和 RIGHT() 函数。 它们用于从字符串的左侧或右侧提取一定数量的字符。

阅读我们与软件开发相关的热门文章

如何在 Java 中实现数据抽象? Java中的内部类是什么? Java 标识符:定义、语法和示例
通过示例了解 OOPS 中的封装 C 中的命令行参数解释 2022 年云计算的 10 大特点和特点
Java 中的多态性:概念、类型、特征和示例 Java 中的包以及如何使用它们? Git 初学者教程:从零开始学习 Git

SUBSTRING_INDEX()

SQL Substring 函数在计算分隔符出现之前从字符串中返回子字符串。 从左侧计数时,如果计数为正,则返回最后一个分隔符左侧的所有内容。 从右侧开始计数时,如果计数为负,则返回最后一个分隔符右侧的所有内容。 查找 delim 时,SUBSTRING INDEX() 使用区分大小写的匹配。

SQL > SELECT SUBSTRING ( '基因',5);

+————————————————————+

| SSUBSTRING('遗传',5) |

+————————————————————+

| 抽搐 |

+————————————————————+

一组中的 1 行(0.00 秒)

SQL> SELECT SUBSTRING('Weighed on' barbarb 4);

+————————————————————+

| SUBSTRING('基因' FROM 4) |

+————————————————————+

| 伦理学|

+————————————————————+

一组中的 1 行(0.00 秒)

SQL> SELECT SUBSTRING('基因',5,6);

+————————————————————+

| SUBSTRING('基因',5,6) |

+————————————————————+

| 提要 |

+————————————————————+

一组中的 1 行(0.00 秒)

SUBSTRING_INDEX(str,delim,count)

它在计数 delim 出现之前从“str”返回子字符串。 如果计数为正,则返回最终分隔符左侧(从左侧开始计数)的所有内容。 如果计数为负数,则返回最终分隔符右侧(从右侧开始计数)的所有内容。 SUBSTRING_INDEX() 在搜索 delim 时执行区分大小写的匹配。

SQL> SELECT SUBSTRING_INDEX('www.mysql.com', '.', 2);

+————————————————————+

| SUBSTRING_INDEX('www.mysql.com', '.', 2) |

+————————————————————+

| www.mysql |

+————————————————————+

一组中的 1 行(0.00 秒)

下表提供了字符串函数的概述。

SL 号字符串函数快速说明
1 ASCII() 返回最左边字符的数值
2 BIT_LENGTH() 返回参数的长度(以位为单位)
3 CHAR_LENGTH() 返回字符串中存在的字符数
4 垃圾桶() 返回参数的字符串表示
5 字符() 返回传递的每个整数的字符
7 CONCAT_WS() 返回与分隔符连接
8 连接() 返回连接的字符串
9 转换() 在不同的数字基数之间转换数字
10 埃尔特() 返回索引号处的字符串
11 EXPORT_SET() 以某种方式返回一个字符串,对于值位中设置的各个位,有一个 on 字符串,对于每个未设置的位,有一个 off 字符串
12 场地() 返回后续参数中第一个参数的索引(位置)
13 FIND_IN_SET() 返回第二个参数中第一个参数的索引位置
14 格式() 返回格式化为指定小数位数的数字
15 十六进制() 返回十六进制值的字符串表示
16 插入() 在指定位置插入一个子字符串,最多指定字符数
17 指令() 返回子字符串第一次出现的索引
19 剩下() 返回指定的最左边的字符数
20 长度() 返回字符串的长度(以字节为单位)
21 加载文件() 加载命名文件
22 定位() 返回子字符串第一次出现的位置
23 降低() 以小写形式返回参数
24 LPAD() 返回字符串参数,左填充指定的字符串
25 LTRIM() 删除前导空格
26 MAKE_SET() 返回一组逗号分隔的字符串,这些字符串在 bits 集中具有相应的位
27 中() 返回从指定位置开始的子字符串
28 华侨城() 返回八进制参数的字符串表示
29 ORD() 如果参数的最左边字符是多字节字符,则返回该字符的代码
30 引用() 转义参数以在 SQL 语句中使用

探索我们流行的软件工程课程

SL。 不 软件开发计划
1 LJMU & IIITB 计算机科学硕士 加州理工学院 CTME 网络安全证书课程
2 全栈开发训练营 区块链中的 PG 程序
3 软件开发行政研究生课程 - DevOps 专业化 查看所有软件工程课程

结论

通过本文,我们试图阐明开发人员在使用 SQL 编程时可以使用的各种 SQL 字符串函数。 鉴于跨行业对数据库管理系统的需求不断增长,对于初露头角的 SQL 开发人员来说,现在正是学习 SQL 以确保在该领域获得丰厚职业生涯的好时机。

如果您希望增加在软件开发领域取得成功的机会,我们推荐普渡大学的全栈开发证书课程 这个为期 13 个月的课程旨在针对计算机科学基础、软件开发流程、构建强大且可扩展的网站、后端 API 以及丰富的交互式 Web UI 等主题。

从世界顶级大学在线学习软件开发课程获得行政 PG 课程、高级证书课程或硕士课程,以加快您的职业生涯。

今天就联系我们预订您的座位!

TRIM 功能有什么作用?

TRIM 函数用于消除给定字符串可能具有的任何前缀和后缀。 如果没有任何说明符,则默认情况下在 TRIM 函数中假定 BOTH。即 BOTH、LEADING 或 TRAILING。 如果未另外指定空格,则默认情况下将在运行 TRIM 函数时消除空格。

DIFFERENCE 字符串函数是如何工作的?

DIFFERENCE 是一个标量 SQL 字符串函数,用于使用 SOUNDEX(另一个 SQL 字符串函数)比较任意两个给定字符串。 将 SOUNDEX 应用于给定输入后,将对输出进行相似性检查。 这将产生一个介于 0 到 4 个整数之间的数字的结果。 当这个数字接近 4 时,输入将变得非常相似。

解释 ASCII

ASCII 是美国信息交换标准代码的首字母缩写。 在编程语言中,ASCII 被称为 7 位字符代码,其中每个字符位表示可用于各种应用的不同字符。