单表查询出现:
ORA-00918: 未明确定义列
00918. 00000 - "column ambiguously defined"查询语句如下:
select * from ( select bts0_.btsid as btsid89_,
bts0_.btsname as btsname89_,
bts0_.btstype_id as btstype3_89_,
bts0_.region_id as region4_89_,
bts0_.longitude as longitude89_,
bts0_.latitude as latitude89_,
bts0_.btsAddress as btsAddress89_,
bts0_.cellID as cellID89_,
bts0_.CI as CI89_,
bts0_.LAC as LAC89_,
bts0_.administrator as adminis11_89_,
bts0_.contact as contact89_,
bts0_.type as type89_,
bts0_.btsname_zh as btsname14_89_,
bts0_.is_synchronized as is15_89_,
bts0_.memo as memo89_,
bts0_.vindic_id as vindic17_89_,
bts0_.project_period_id as project18_89_,
bts0_.create_time as create19_89_,
bts0_.UPFATE_TIME as UPFATE20_89_,
bts0_.STATE_ID as STATE21_89_,
bts0_.STATION_ID as STATION22_89_,
bts0_.station_id as station22_89_,
bts0_.VENDOR_ID as VENDOR23_89_,
bts0_.CLASSSIFY as CLASSSIFY89_,
bts0_.IS_SHIFEN as IS25_89_,
bts0_.ZAISHAN_NUM as ZAISHAN26_89_,
bts0_.SUB_COMPANY as SUB27_89_,
bts0_.SUB_CITY as SUB28_89_,
bts0_.SUB_COUNTRY as SUB29_89_,
bts0_.BTS_IDENTIFY as BTS30_89_,
bts0_.BTS_CODE as BTS31_89_
from Bts_Info bts0_)请问哪里出了问题?oracleselect
ORA-00918: 未明确定义列
00918. 00000 - "column ambiguously defined"查询语句如下:
select * from ( select bts0_.btsid as btsid89_,
bts0_.btsname as btsname89_,
bts0_.btstype_id as btstype3_89_,
bts0_.region_id as region4_89_,
bts0_.longitude as longitude89_,
bts0_.latitude as latitude89_,
bts0_.btsAddress as btsAddress89_,
bts0_.cellID as cellID89_,
bts0_.CI as CI89_,
bts0_.LAC as LAC89_,
bts0_.administrator as adminis11_89_,
bts0_.contact as contact89_,
bts0_.type as type89_,
bts0_.btsname_zh as btsname14_89_,
bts0_.is_synchronized as is15_89_,
bts0_.memo as memo89_,
bts0_.vindic_id as vindic17_89_,
bts0_.project_period_id as project18_89_,
bts0_.create_time as create19_89_,
bts0_.UPFATE_TIME as UPFATE20_89_,
bts0_.STATE_ID as STATE21_89_,
bts0_.STATION_ID as STATION22_89_,
bts0_.station_id as station22_89_,
bts0_.VENDOR_ID as VENDOR23_89_,
bts0_.CLASSSIFY as CLASSSIFY89_,
bts0_.IS_SHIFEN as IS25_89_,
bts0_.ZAISHAN_NUM as ZAISHAN26_89_,
bts0_.SUB_COMPANY as SUB27_89_,
bts0_.SUB_CITY as SUB28_89_,
bts0_.SUB_COUNTRY as SUB29_89_,
bts0_.BTS_IDENTIFY as BTS30_89_,
bts0_.BTS_CODE as BTS31_89_
from Bts_Info bts0_)请问哪里出了问题?oracleselect
String hql = " from Bts b where b.id>0 ";为查询 语句
bts0_.station_id as station22_89_
你这儿用了两个同样的别名,当然出问题,与你表结构本身有没有重复列没关系的。再说,你表结构也不可能有重复列啊。
而且,你这个查询写的莫名其妙,为什么要外面再做一个select * from 呢?只用括号内的不就够了么?