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

恢复QScored公共数据集后PostgreSQL表连接报错的解决问询

解决PostgreSQL表连接时列未定义的错误

问题根源在于PostgreSQL的列名大小写规则:
PostgreSQL默认会把未用双引号包裹的标识符(表名、列名)自动转为小写,但如果你的表列创建时包含大写字母(比如Project_id),且创建过程中用双引号声明了这个列名,那么查询时必须用双引号包裹列名才能匹配到实际存在的列。

即时修复方案

修改SQL语句,给列名加上双引号,保持大小写完全一致:

select * from class_metric 
join method_metric on "class_metric"."Project_id" = "method_metric"."Project_id"

避免后续同类问题的方案

如果不想每次查询都手动加双引号,可以将列名统一改为全小写:

-- 修改class_metric表的列名
ALTER TABLE class_metric RENAME COLUMN "Project_id" TO project_id;
-- 修改method_metric表的列名
ALTER TABLE method_metric RENAME COLUMN "Project_id" TO project_id;

修改完成后,你最初写的SQL语句就能正常执行。

验证列名的步骤

可以先确认表的实际列结构:

  • 在pgAdmin中,找到对应表,右键选择「列」标签,查看列名的准确大小写;
  • 或在psql命令行中执行\d class_metric,查看列名信息。

内容的提问来源于stack exchange,提问作者Hiba Moneer

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 21:53:09