ORACLE 查询字表未明确定义列「建议收藏」

ORACLE 查询字表未明确定义列「建议收藏」运行环境: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.)


转载自:http://blog.csdn.net/wxdsdtc831/article/details/7432774

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

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/188937.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • jenkins安装和简单配置

    jenkins安装和简单配置

    2020年11月19日
  • 启发式算法(Heuristic Algorithm)

    启发式算法(Heuristic Algorithm)启发式算法是一种技术,这种技术使得在可接受的计算成本内去搜寻最好的解,但不一定能保证所得的可行解和最优解,甚至在多数情况下,无法阐述所得解同最优解的近似程度。Heuristics可以等同于:实际经验

  • 带通滤波器和带阻滤波器详细解析:(定义,区别,工作原理,经典电路图,应用)「建议收藏」

    带通滤波器和带阻滤波器详细解析:(定义,区别,工作原理,经典电路图,应用)「建议收藏」带通滤波器和带阻滤波器详细解析:(定义,区别,工作原理,经典电路图,应用)[导读]带通滤波器:它允许一定频段的信号通过,抑制低于或高于该频段的信号、干扰和噪声;带阻滤波器:它抑制一定频段内的信号,允许该频段以外的信号通过。关键词:滤波器 带通滤波器和带阻滤波器的定义  按所处理的信号分为模拟滤波器和数字滤波器两种。  按所通过信号的频段分为低通、高通、带通和带阻滤波器四种。  带通滤波器:它允许一定频段的信号通过,抑制低于或高于该频段的信号、干扰和噪声;  带阻滤波器…

  • nginx版本如何选择?

    nginx版本如何选择?

  • js的onchange(js replace函数)

    jsonpropertychange函数当一个HTML元素的属性用js改变的时候,都能通过onpropertychange来捕获。例如一个<inputname=”text1″id=”text1″/>对象的value属性被页面的脚本修改的时候,onchange无法捕获到,而onpropertychange却能够捕获。也就是说:onpropertychange事…

  • 如何防止XSRF攻击

    如何防止XSRF攻击XSRF全称是cross-siterequestforgery(跨站点请求伪造),也称为CSRF,是一种常见的web攻击方式。攻击形式描述如下:1.用户登录并访问一个正常的站点http://www.biz.com;2.在同一个浏览器实例下,用户打开了恶意网站http://www.bad.com;(至于用户怎么会打开这个恶意网站,可能是恶意网站通过一些链接或者垃圾邮件等等形式诱…

发表回复

您的电子邮箱地址不会被公开。

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