字符串联符号
(2010-12-02 10:56:23)
标签:
sql字符串联符号it |
分类: SQL语言 |
使用双管道符号“||”来进行字符串联。
作用:将字面值(不来自任何数据库对象的数据、字符等)与现有列数据进行串联。
示例:
表regions
|
REGION_ID ---------------------- ------------------------- 1 2 3 4 4 rows selected |
SELECT 'I come from '||region_name AS "Regions" FROM regions;
|
Regions ------------------------------------- I come from Europe I come from Americas I come from Asia I come from Middle East and Africa 4 rows selected |
参考:字符串联函数CONCATE
CONCATE(concatenate,连接),连接两个字符字面值、列值、理或者表达式从而生成一个更大的字符表达式。作用与||一致。语法:CONCAT(s1,s2)。
字面值中单引号的解决方法:
在我们需要输出的字面值中有可以会出现“’”,如“I'm Chinese.”如果直接使用“SELECT 'I'm Chinese.' FROM DUAL;”系统将会报错,解决方法有两个:
- 在字面值中的单引号前再加一个单引号,如下:
SELECT 'I''m Chinese.' FROM DUAL;
|
'I''MCHINESE.' -------------- I'm Chinese. 1 rows selected |
- 使用引用(q)运算符。
q运算符允许从一组可以用于包含字符的符号对中选择一种作为单引号的替代符号。它们可以是任何单字节、多字节字符或者四种括号:(),[],{},<>。使用q运算符,实际上可以将字符分隔符从单引号改变为其他任何字符。
语法:q'delimiter'
其中运算符内可以包括delimiter字面符,delimiter可以是任何字符或括号。
SELECT q'[I'm [Chinese].]' AS "q[]" FROM DUAL;
SELECT q'XI'm Chinese XX.X' AS "qX" FROM DUAL;
|
q[] --------------- I'm [Chinese]. 1 rows selected qX ---------------- I'm Chinese XX. 1 rows selected |

加载中…