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

如何处理PostgreSQL(Periscope)字段名中包含的英文句号?

PostgreSQL查询含英文句号字段的解决方案

PostgreSQL 中如果标识符(字段名、表名等)包含特殊字符(包括英文句号、空格、大小写混合字符),需要使用半角双引号将完整标识符包裹,且必须严格匹配建表时的标识符大小写。

你之前尝试转义不生效,基本都是因为以下几种常见错误:

  • 只包裹了字段名的部分内容,没有把整个带句号的字段名完全包裹
  • 误用了全角双引号、单引号、方括号作为转义符,PostgreSQL原生语法仅支持半角双引号作为标识符转义符
  • 双引号内的字段名字母大小写和建表时的实际命名不一致,PostgreSQL加双引号的标识符是大小写敏感的

你的需求是查询名为via.channel的独立字段,原来的写法会被SQL解析器识别为via表/嵌套对象下的channel字段,自然会报错,正确写法如下:

SELECT "via.channel"
FROM my_database.channel
LIMIT 10;

如果按上述写法执行仍然报错,可以先执行下面的语句查询该表的所有字段,确认via.channel字段的准确拼写和大小写:

SELECT column_name 
FROM information_schema.columns 
WHERE 
  table_catalog = 'my_database' -- 替换为你的实际数据库名
  AND table_name = 'channel';

内容的提问来源于stack exchange,提问作者Chris Greiner

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 09:15:03