实在没办法,求助大家了
本来是hql语句,是正确的
from PZjlwf zjlwf where 1=1 and zjlwf.dbzId.id in (?,?,?,?) and zjlwf.pcid.id = ? order by zjlwf.dbzId.zbh
但是要加另一个排序条件:
select zjlwf from PZjlwf zjlwf,PPwhzjdfz pwhzjdfz where 1=1 and zjlwf.pcid=pwhzjdfz.pcid and zjlwf.dbzId.id in (?,?,?,?) and zjlwf.pcid.id = ? order by zjlwf.dbzId.zbh,pwhzjdfz.zjjs
加了以后就狂重复,重复了12次。。。
转换的sql语句为:
select
pzjlwf0_.id as id133_,pzjlwf0_.BB as BB133_,
pzjlwf0_.CJSJ as CJSJ133_,pzjlwf0_.DBTS as DBTS133_,
pzjlwf0_.DBYFJE as DBYFJE133_,pzjlwf0_.DBZID as DBZID133_,
pzjlwf0_.LWFKSJE as LWFKSJE133_,pzjlwf0_.LWFSFJE as LWFSFJE133_,
pzjlwf0_.LWFYFJE as LWFYFJE133_,pzjlwf0_.ND as ND133_,
pzjlwf0_.PCID as PCID133_,pzjlwf0_.PSTS as PSTS133_,
pzjlwf0_.PSYFJE as PSYFJE133_,pzjlwf0_.PSZID as PSZID133_,
pzjlwf0_.PSZFBZ as PSZFBZ133_,pzjlwf0_.PSZFLX as PSZFLX133_,
pzjlwf0_.SCZTW as SCZTW133_,pzjlwf0_.ZDRS as ZDRS133_,
pzjlwf0_.ZFBZ as ZFBZ133_,pzjlwf0_.ZFLX as ZFLX133_,
pzjlwf0_.ZJSBXXID as ZJSBXXID133_,pzjlwf0_.ZT as ZT133_
from
PS_ZJLWF pzjlwf0_,
PS_PWHZJDFZ ppwhzjdfz1_,
PS_DBZ pdbz2_
where
pzjlwf0_.DBZID=pdbz2_.id
and 1=1
and pzjlwf0_.PCID=ppwhzjdfz1_.PCID
and (
pzjlwf0_.DBZID in (963, 964, 965, 966)
)
and pzjlwf0_.PCID=874
order by
pdbz2_.ZBH,
ppwhzjdfz1_.ZJJS
用了distinct也是不行,后来参考帖子:
oracle 多表多字段去重问题!
去重了,但是貌似排序不对吧,反正数据库里看
都是0了,之前肯定不是0的。
真心不懂啊,求帮助!
1.为什么查询会重复,不是懒加载,我加了也不行
2.为什么最后查出zjjs会都是0
------解决思路----------------------
PZjlwf zjlwf,PPwhzjdfz pwhzjdfz
你这两个表不是一一对应吧,这个表1条,对应另一个表12条?