You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQLite中SELECT查询含&符号的表名与列名如何转义?

SQLite中转义含&符号的表名/列名方法

在SQLite中,&属于逻辑运算符(逻辑与),直接写jack&jill会被解析为两个列名jack和jill进行逻辑运算,因此会提示列不存在。要正确引用含&的标识符,有两种通用解决方法:

方法1:用双引号包裹标识符

这是SQL标准的标识符引用方式,SQLite完全支持,适用于列名、表名等所有标识符:

select "jack&jill"
from    (
        select 'test' as "jack&jill"
        )

方法2:用方括号包裹标识符

这是兼容部分其他数据库(如MySQL、SQL Server)的写法,SQLite同样支持:

select [jack&jill]
from    (
        select 'test' as [jack&jill]
        )

表名含&符号的处理

如果表名包含&,处理逻辑和列名完全一致,只需用双引号或方括号包裹表名即可:

-- 双引号方式查询含&的表
select * from "JACK&JILL_TABLE";

-- 方括号方式查询含&的表
select * from [JACK&JILL_TABLE];

注:除了&,只要标识符包含空格、特殊符号或与SQL关键字重名,都可以用这两种方法处理。

内容的提问来源于stack exchange,提问作者Lee Murray

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 09:35:00