ORACLE 查询字表未明确定义列
运行环境: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
ORACLE 查询字表未明确定义列相关推荐
- Oracle查询提示:未明确定义列
在调试Oracle一个查询语句时出现:未明确定义列 在这种情况下有可能存在的问题不是字段重命名的问题,而是在查询的列中有重复的列.例如: select A.*,rownum mynum from ( ...
- oracle报错00918,华丹学堂-Oracle报错ORA-00918: 未明确定义列原因
报表在线开发时,数据源形如:SELECT A.CLASSID,B.CLASSID FROM CLASSINFO A,STUDENT B WHERE A.CLASSID=B.CLASSID. 这个语句在 ...
- Oracle数据库表连接查询并分页SQL语句提示未明确定义列
Oracle数据库表连接查询并分页SQL语句提示未明确定义列 两张表中的字段: t_product t_category product_id category_id product_name cat ...
- oracle数据库同时实现联表查询和分页查询(未明确定义列)
ps:只是记录新手小白的脱坑之路,大佬勿喷 今天在做前端数据查询的时候,在实现联表查询的同时进行分页查询遇到了令人头秃的问题,分页查询的sql语句是这样的 select * from (select ...
- 数据库查询 报错 *****ORA-00918: 未明确定义列
数据库查询 报错 *****ORA-00918: 未明确定义列:显然数据库不知道你写的列是指谁的列.一般单表查询不会出现这种错误,在多表联合查询的时候,在where 设定查询条件的地方,列名1=参数1 ...
- oracle 918,Oracle00-918:未明确定义列的错误
未明确定义列错误 原因:在查询语句中同一列被查询了两次,在通过结果集得值的时候,不知道得哪一个结果,导致该错误 情况一:例如:select tb_name,tb_id,tb_name from tab ...
- oracle未明确定义列
分类: SQL 使用技巧 2012-04-06 16:12 1332人阅读 评论(0) 收藏 举报 运行环境:Oracle10g sqlplus环境下. 在查询语句中,经常会出现一个错误: SQL ...
- oracle分页报未明确定义列,关于在join中出现ORA-00918: 未明确定义列的解决办法
/*关于在join中出现ORA-00918: 未明确定义列的解决办法*/ /*关于join和where表连接问题,需要在使用join时需要使用列的别名,避免相同列名的出现.*/ --以下为简要测试过程 ...
- SQL未明确定义列错误
当数据库根据字段名无法确定具体哪一列时,就会报未明确定义列的错误. 如表中有相同的字段,然后要查询此表的重复的某一字段就会报未明确定义列的错误. 有时候,一个sql语句没错,但根据sql语句执行的为字 ...
最新文章
- 延迟环境变量扩展(bat)
- Xamarin.Android编译CPU类型选择方式
- 最优化课堂笔记06-无约束多维非线性规划方法(含重点)
- 为啥linux分区是nvme0n1,NAS 篇五:尝试达成最终目标: 黑裙+万兆网卡+Nvme 存储空间的实现与测试...
- jQuery 往table添加新内容有以下四个方法:
- c语言全局变量默认值
- sql server 更新语句
- 推理集 —— 举一反三
- python基础 函数
- yum在linux安装mysql数据库_linux安装mysql(yum安装,比较简单)
- quartus波形仿真破解MODELSIM
- window 10及window7电脑前面耳机插孔没有声音,后面有声音
- 表情识别相关论文摘要
- ffmpeg 自定义IO与Seek
- 华硕灵耀pro16参数 华硕灵耀pro16怎么样
- 三天打鱼,两天晒网问题
- 1367:查找二叉树(tree_a)
- 解决win7-win8 chcp命令无法使用
- 文件下载重命名(跨域)
- 学校的校园景点平面图(校园景点迷你地图C++数据结构)