SQL QUOTENAME()函数
SQL QUOTENAME() 函数用于检索带有分隔符的Unicode字符串。它接受两个参数 char_str 和 quote_char ,并返回一个添加了分隔符的字符串,以使其成为有效的SQL分隔符标识符。
分隔符是一个或多个字符的序列,指定纯文本、字符字符串、单词或任何其他数据项中独立区域的边界。字符字符串限制为128个字符,如果长度大于128个字符,则返回一个 NULL 值。
注意 - 默认分隔符是左 [ 和右 ] 方括号。
语法
以下是SQL QUOTENAME() 函数的语法-
QUOTENAME(char_string, quote_character)
参数
- char_string −这是一个Unicode字符数据的字符串。
-
quote_character −它是一个单字符字符串,用作定界符。
返回值
此函数返回一个带有定界符的Unicode字符串。
示例
在以下示例中,我们使用 SQL QUOTENAME() 函数来检索带有当前字符字符串的定界符的Unicode字符串 ‘tutorials[]point’ 。
SELECT QUOTENAME('tutorials[]point') AS UNICODE_STRING;
输出
运行以上程序后,将产生以下输出结果−
+-----------------------+
| UNICODE_STRING |
+-----------------------+
| [tutorials[]]point] |
+-----------------------+
示例
以下是 SQL QUOTENAME() 函数的另一个示例。在此示例中,我们尝试使用当前字符字符串 ‘hello world’ 作为分隔符来检索Unicode字符串,该字符串最初不包含任何分隔符。
SELECT QUOTENAME('hello world') AS UNICODE_STRING;
输出
上述SQL查询生成以下输出结果:-
+------------------+
| UNICODE_STRING |
+------------------+
| [hello world] |
+------------------+
示例
如果我们将参数 quote_char(自定义分隔符) 传递给 QUOTENAME() 函数,该函数将返回带有指定分隔符的Unicode字符串。
在下面的示例中,我们使用 SQL QUOTENAME() 函数来检索具有指定分隔符 ‘{}’ 的当前字符字符串 ‘Tutorials Point’ 的Unicode字符串。
SELECT QUOTENAME('Tutorials Point', '{}') AS UNICODE_STRING;
输出
以下是上述查询的输出结果-
+----------------------------+
| UNICODE_STRING |
+----------------------------+
| {Tutorials Point} |
+----------------------------+
示例
您还可以将表列作为参数传递给 SQL QUOTENAME() 函数,以获得带有指定分隔符的Unicode字符串。假设我们使用以下 CREATE 语句创建了一个名为 Customers 的表 –
CREATE TABLE CUSTOMERS(
ID INT NOT NULL,
NAME VARCHAR (20) NOT NULL,
AGE INT NOT NULL,
ADDRESS CHAR (25) ,
SALARY DECIMAL (18, 2));
现在,让我们使用以下的 INSERT 语句向 Customers 表中插入一些记录 −
INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY) VALUES (1, 'Ramesh', 32, 'Ahmedabad', 2000.00 );
INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY) VALUES (2, 'Khilan', 25, 'Delhi', 1500.00 );
INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY) VALUES (3, 'kaushik', 23, 'Kota', 2000.00 );
INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY) VALUES (4, 'Chaitali', 25, 'Mumbai', 6500.00 );
以下 SQL 查询检索 Customers 表中列名为 Name 的 Unicode 字符串值,并使用指定的分隔符‘()’进行处理 −
SELECT ID, NAME, QUOTENAME(NAME, '()') AS UNICODE_STRING FROM CUSTOMERS;
输出如下
以下是上述查询的输出结果 −
+----+----------+----------------+
| ID | NAME | UNICODE_STRING |
+----+----------+----------------+
| 1 | Ramesh | (Ramesh) |
| 2 | Khilan | (Khilan) |
| 3 | kaushik | (kaushik) |
| 4 | Chaitali | (Chaitali) |
+----+----------+----------------+