SQL 字符串比较

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

在本 SQL 部分,我们将讨论如何在结构化查询语言中比较两个或多个字符串

我们可以使用 STRCMP 字符串函数、LIKE 操作符和等于操作符来比较两个或多个字符串。

STRCMP 字符串函数

STRCMP 是一个字符串函数,它比较指定的两个字符串,如果第一个字符串的长度等于第二个字符串的长度,则返回 0。如果第一个字符串的长度大于第二个字符串的长度,则函数返回 1,否则返回 -1。

STRCMP 函数语法

STRCMP 字符串函数示例

示例 1: 以下 SELECT 查询比较 JAVATPOINT 和 EXAMPLES 字符串的长度

输出

1

示例 2: 以下 SELECT 查询比较在 STRCMP 函数中传递的两个句子的长度

输出

-1

示例 3: 以下 SELECT 查询比较两个城市的长度

输出

0

LIKE 操作符

LIKE 操作符将特定模式与字段的每一行进行匹配,并在输出中返回匹配的值。此操作符始终与 SQL 语句中的 WHERE 子句一起使用。

LIKE 操作符语法

LIKE 操作符示例

让我们来看下面的 Student 表

Roll_No名字城市年龄百分比级别
101Akash德里1889A2
102BhaveshKanpur1993A1
103Yash德里2089A2
104Bhavna德里1978B1
105Yatin勒克瑙2075B1
106IshikaGhaziabad1991C1
107Vivek果阿2080B2

查询 1: 以下查询显示来自上述 Student 表中 First_Name 以 'B' 开头的学生的记录

上述查询的输出

Roll_No名字百分比级别
102Bhavesh93A1
104Bhavna78B1

如上输出所示,表中只包含 Bhavesh 和 Bhavna 学生的记录,因为他们的名字以 B 开头。

查询 2: 以下查询显示来自给定 Student 表中 First_Name 包含字符 'a' 的任何位置的学生的记录

上述查询的输出

Roll_No名字城市年龄百分比级别
101Akash德里1889A2
102BhaveshKanpur1993A1
103Yash德里2089A2
104Bhavna德里1978B1
105Yatin勒克瑙2075B1
106IshikaGhaziabad1991C1

等于操作符 (=)

它是一种比较操作符,用于显示来自给定 SQL 表的匹配数据。

数据库用户在结构化查询语言中高度使用此操作符。

如果列的值与查询中指定的值相同,则此操作符将从数据库表中返回 TRUE 行。

等于操作符语法

等于操作符示例

让我们来看下面的 Worker 表

Worker_IdWorker_NameWorker_CityWorker_SalaryWorker_Bonus
101AnujGhaziabad350002000
102Tushar勒克瑙290003000
103Vivek加尔各答350002500
104Shivam果阿220003000

以下查询显示 worker 表中 Worker_Salary 为 35000 的工人的记录

输出

Worker_IdWorker_NameWorker_CityWorker_SalaryWorker_Bonus
101AnujGhaziabad350002000
103Vivek加尔各答350002500

下一个主题SQL Minus