如何在oracle中输出带单引号的字符串

来源:互联网 发布:淘宝客自助建站 编辑:程序博客网 时间:2024/05/20 06:31

在SQL或者PLSQL中如果要表达一个带有特殊字符的字符串时,通常要用‘’包装起来。但如果字符串本身包含'A'B'这样的字符,那么实现起来有点繁琐。

比如:This is a 'test'!

第一种实现方式:

SQL> select 'This is a ''test''!' from dual;   --其中的''表是的是两个单引号,不是一个双引号

'THISISA''TEST''!
-----------------
This is a 'test'!

 

第二种实现方式:

SQL> select q'[This is a 'test'!]' from dual;

Q'[THISISA'TEST'!
-----------------
This is a 'test'!

 

第三种实现方式:

SQL> select q'<This is a 'test'!>' from dual;

Q'<THISISA'TEST'!
-----------------
This is a 'test'!

 

在Oracle中,single-quote(‘)是一个表示字符串的关键字。所以在字符串中用两个”表示一个实际的单引号字符。所有才会有了上面第一条SQLselect 'This is a ''test''!' from dual;' ,Oracle提供了一个Q-quote的表达式,用来简化SQL或PLSQL中字符串的表示。

语法很简单,必须将要表示的字符串用一对特殊字符括起来,这对字符必须一致,如上例中的第二与第三种方法.