SQL UPPER 函数

摘要:在本教程中,您将学习如何使用 SQL UPPER 函数返回一个所有字符都转换为大写的新字符串。

SQL UPPER 函数简介 #

UPPER 函数接受一个字符串,并返回一个所有字符都转换为大写的新字符串。

这是 UPPER 函数的语法:

UPPER(string)Code language: SQL (Structured Query Language) (sql)

UPPER 函数返回一个新字符串,其中 string 的所有字符都已转换为大写。如果 stringNULLUPPER 函数将返回 NULL

基本的 SQL UPPER 函数示例 #

以下语句使用 UPPER 函数将字符串 sql upper 转换为大写:

SELECT
  UPPER('sql upper') result;Code language: SQL (Structured Query Language) (sql)

试一试

输出

  result
-----------
 SQL UPPERCode language: SQL (Structured Query Language) (sql)

以下查询将 UPPER 函数与 NULL 一起使用:

SELECT
  UPPER(NULL) result;Code language: PHP (php)

试一试

输出

 result
--------
 NULLCode language: PHP (php)

将数据转换为大写 #

我们将使用示例数据库中的 employees 表。

SQL UPPER Function: employees table

以下查询使用 UPPER 函数从 last_name 列检索数据并将其转换为大写:

SELECT
  UPPER(last_name) formatted_last_name
FROM
  employees
ORDER BY
  formatted_last_name;Code language: SQL (Structured Query Language) (sql)

输出

 formatted_last_name
---------------------
 AUSTIN
 BAER
 BAIDA
 BELL
 CHEN
...

在此示例中,我们从 employees 表的 last_name 列中检索数据,并动态地将其转换为大写。employees 表的 last_name 列中的数据保持不变。

不区分大小写地筛选数据 #

当使用 WHERE 子句筛选数据时,数据库系统会区分大小写来匹配字符串。例如,字符串字面量 Brucebruce 是不同的。

要不区分大小写地匹配文本字符串,您可以在 WHERE 子句中使用 UPPER 函数,如下所示:

SELECT
  employee_id,
  first_name
FROM
  employees
WHERE
  UPPER(first_name) = 'BRUCE';Code language: SQL (Structured Query Language) (sql)

试一试

请注意,此查询会扫描整个表以查找匹配的行。如果表很大,查询速度会很慢。

为了解决这个问题,一些数据库系统提供了基于函数的索引,允许您基于一个或多个列的函数来定义索引,从而获得更好的查询性能。

摘要 #

  • 使用 UPPER 函数从一个字符串中返回一个所有字符都转换为大写的新字符串。

数据库 #

本教程是否有帮助?
© .