未明确定义列什么原因_将多表数据汇总到一个表

未明确定义列什么原因_将多表数据汇总到一个表运行环境:Oracle10gsqlplus环境下。 在查询语句中,经常会出现一个错误: SQL基础:ORA-00918:未明确定义列的错误。 当前遇到有两种情况。原因为:当查询语句中,查询的表(数据集)中有相同的字段名,查询字段无法确认是改查那个字段 时,就会报未明确定义列的错误。 第一种情况: 1.单表时: 比如fconsign表中存在三个字段:fcsg_c

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

运行环境:Oracle10g sqlplus环境下。 
在查询语句中,经常会出现一个错误: 
SQL基础:ORA-00918:未明确定义列的错误。 

当前遇到有两种情况。原因为:当查询语句中,查询的表(数据集)中有相同的字段名,查询字段无法确认是改查那个字段 
时,就会报未明确定义列的错误。 

第一种情况: 
1.单表时: 
比如fconsign表中存在三个字段:fcsg_consign_id,fcsg_consign_type,fcsg_consign_status 
SELECT FCSG_CONSIGN_ID FROM (SELECT FCSG_CONSIGN_ID,FCSG_CONSIGN_TYPE,FC.* FROM FCONSIGN FC) T
这个SQL语句就会报错,因为在T中FCSG_CONSIGN_ID有两个字段,导致DBMS无法确定要查询的哪个列 
SELECT FCSG_CONSIGN_STATUS FROM (SELECT FCSG_CONSIGN_ID,FCSG_CONSIGN_TYPE,FC.* FROM FCONSIGN FC) T 
这样就不会报错了,T中FCSG_CONSIGN_STATUS只有一个,这样就不会报错了。 

总而言之:在嵌套查询中,外查询的字段在子查询中只能出现一个,否则则无法确定是要查哪个字段。就会报 未明确定义列的错误。 

2.多表联合查询 
比如表A,B中都有a字段。 
select a from A,B 这样就要报错。因为也是无法确定查 

哪一列。需要明确定义A.a活着B.a (如果在from语句后面为表取了别名,比如 select s_no,s_name,s_score,s.class_no,class_name from student s join class c on (s.class_no = c.class_no)的时候, 则 select语句中那个被多张表都拥有的相同字段名也需要用别名标识 如:s.class_no.)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/185774.html原文链接:https://javaforall.net

(0)
上一篇 2022年10月5日 上午9:00
下一篇 2022年10月5日 上午9:16


相关推荐

  • HTTP Status 400 (HTTP400状态码)

    HTTP Status 400 (HTTP400状态码)异常信息记录 2019 11 16HTTPStatus 错误的请求 gt Type StatusReport gt 描述 由于被认为是客户端对错误 例如 畸形的请求语法 无效的请求信息帧或者虚拟的请求路由 服务器无法或不会处理当前请求 gt ApacheTomcat 8 5 46 gt 出现 400 首先需要想到的是前端页面传来的数据类型与后

    2026年3月19日
    3
  • java栈和堆的区别_Java中堆和栈的区别

    java栈和堆的区别_Java中堆和栈的区别堆和栈都是 Java 用来在 RAM 中存放数据的地方 堆 1 Java 的堆是一个运行时数据区 类的对象从堆中分配空间 这些对象通过 new 等指令建立 通过垃圾回收器来销毁 2 堆的优势是可以动态地分配内存空间 需要多少内存空间不必事先告诉编译器 因为它是在运行时动态分配的 但缺点是 由于需要在运行时动态分配内存 所以存取速度较慢 栈 1 栈中主要存放一些基本数据类型的变量 byte short int

    2026年3月16日
    2
  • idea2021.8.3激活码永久(JetBrains全家桶)「建议收藏」

    (idea2021.8.3激活码永久)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~Z9LZO4ZKWA-eyJsaWNlbnNlSWQiOi…

    2022年3月22日
    85
  • css颜色渐变问题

    css颜色渐变问题效果如下 效果如下 上图 0deg 即为自下向上的渐变线 90deg 即为自左往右的渐变线根据设定特殊角度的渐变线就可以实现想要的效果透明度设置 transparent 添加透明度可以设置 rgba 函数中的最后一个参数透明度定义是从 0 到 1 的值 0 表示完全透明 1 表示完全不透明 重复线性渐变 repeating linear gradient 径向渐变 径向渐变由中心定义 同样必须至少有两个颜色节点可以设置渐变中心 形状 圆形 椭圆 大小 默认情况下实在中心 center 效

    2025年12月1日
    6
  • css 背景渐变

    css 背景渐变CSS 渐变 CSS 定义了两种渐变类型 线性渐变 向下 向上 向左 向右 对角线 径向渐变 由其中心定义 CSS 线性渐变语法 background image linear gradient direction color stop1 color stop2 线性渐变 从上到下 默认 grad background image linear gradient red yellow 线性渐变 从左到右

    2026年3月19日
    2
  • linux显示所有文件的大小,显示文件夹下文件的个数,hadoop命令中查看文件夹下的个数命令,模糊查询

    linux显示所有文件的大小,显示文件夹下文件的个数,hadoop命令中查看文件夹下的个数命令,模糊查询

    2021年7月18日
    526

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号