Ahoj,

no tak to je hodne zajimavy, protoze podle me je to spravne ... zkusil bych 
malou drobnost, prehodit poradi tabulek v
prvnim dotazu na ...

select new 
com.freightservice.model.TenderCarrierBestBidInformationResultItem(tender, 
tenderBid)
from TenderBid tb, Tender t where t = tb.tender and tb.carrier = ? and 
tb.bidPrice = (
        select min(tb2.bidPrice) from tenderBid tb2 where tb2.carrier = 
tb.carrier and tb2.tender = tb.tender
)

Mohlo by dojit k prehozeni poradi tabulek a pak by mohl byt vzdy jiny alias. 
Ale kazdopadne bych to postnul jako bug do
HIbernate ...

> return getHibernateTemplate().find("select new
> com.freightservice.model.TenderCarrierBestBidInformationResultItem(" +
>                "tender, tenderBid) " +
>                "from Tender tender, TenderBid tenderBid " +
>                "where tender = tenderBid.tender " +
>                "and tenderBid.carrier = ? " +
>                "and tenderBid.bidPrice = (" +
>                "select min(b.bidPrice) " +
>                "from tenderBid b " +
>                "where b.carrier = tenderBid.carrier " +
>                "and b.tender = tenderBid.tender)", carrier);
> 
> vygeneruje to nasledovny select:
> 
> 
> select
>        tender0_.id as col_0_0_,
>        tenderbid1_.id as col_1_0_
>    from
>        tender tender0_,
>        tender_bid tenderbid1_
>    where
>        tender0_.id=tenderbid1_.fk_tender_id
>        and tenderbid1_.fk_carrier_id=?
>        and tenderbid1_.bid_price=(
>            select
>                min(tenderbid1_.bid_price)
>            from
>                tender_bid tenderbid1_
>            where
>                tenderbid1_.fk_carrier_id=tenderbid1_.fk_carrier_id
>                and tenderbid1_.fk_tender_id=tenderbid1_.fk_tender_id
>        )
> 
> pre tabulku tender_bid je pouzity rovnaky alias : tenderbid1_
> 
> Jiří Mareš  wrote / napísal(a):
>> Ahoj,
>>
>> to mi prijde divny, ja jsem si myslel, ze alias se vytvari castecne ze
>> jmena tabulky a castecne pomoci poradoveho cisla
>> tabulky, tudiz tam 2 stejne aliasy byt nemuzou. Neni problem jinde.
>> Pouzivate aliasy v originalnim HQL dotazu?
>>
>> Zkuste sem poslat ten HQL dotaz ...
>>
>> S pozdravem
>>
>> Ivan Polák napsal(a):
>>  
>>> pouzivam v Hibernate vytvaranie select-ov pomocou HQL
>>> getHibernateTemplate().find("select....."). mam ale select, kde pouzivam
>>> v "hlavnom select-e" 2 tabulky (prepojene cez id-cka) a vo where
>>> podmienke je sub-select, kde pouzivam jednu z tych 2 tabuliek co v
>>> hlavnom selecte.
>>>
>>> a tu je prave problem Hibernate si pri vytvarani SQL dotazu vytvori pre
>>> tieto tabulky v hlavnom dotaze a sub-selecte rovnaky alias, takze
>>> samozrejme dostavam iny select a nie to co som chcel.
>>>
>>> neviete prosim, ako tento problem odstranit.
>>>     
> 

-- 
Jiří Mareš (mailto:jiri.ma...@svt.cz)
ČSAD SVT Praha, s.r.o. (http://www.svt.cz)
Czech Republic

Odpovedet emailem