SQL 嵌入引号

SQL 嵌入引号,你想在字符串常量里嵌入引号,并且希望使用 SQL 产生如下所示的结果。

SQL 嵌入引号 问题描述

你想在字符串常量里嵌入引号,并且希望使用 SQL 产生如下所示的结果。

QMARKS
--------------
g'day mate
beavers' teeth
'

SQL 嵌入引号 解决方案

下面的 3 个 SELECT 语句展示了使用引号的不同方式:在一个字符串的中间插入引号和单独使用引号。

1 select 'g''day mate' qmarks from t1 union all
2 select 'beavers'' teeth'    from t1 union all
3 select ''''                 from t1

SQL 嵌入引号 扩展知识

讨论引号的处理时,把它和圆括号做类比通常会更容易理解。我们如果写下左括号,也必须接着写下右括号。引号也是一样。要记住,在任何字符串里引号的个数都应该是一个偶数。要想在字符串中间插入引号,需要使用两个引号才行。

select 'apples core', 'apple''s core',
        case when '' is null then 0 else 1 end
  from t1
 
 'APPLESCORE  'APPLE''SCOR  CASEWHEN''ISNULLTHEN0ELSE1END
 -----------  ------------  -----------------------------
 apples core  apple's core                              0

下面的查询用于揭示引号的真正作用。两个外层的引号用于定义一个字符串常量,在该字符串常量里还使用了两个引号来代表一个引号,我们实际上希望它显示的内容就是这一个引号。

select '''' as quote from t1
 
 Q
 -
 '

处理引号时,还要记住如果一个字符串里只包含两个引号,并且这两个引号中间没有任何字符,那么这个字符串是 Null

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程