*Pak to asi stačí spojit s tím co posílal kolega předemnou, asi nějak takto:
SELECT xyz FROM master WHERE exists (SELECT 1 FROM detail WHERE
detail.master_id = **master.id** AND detail.sloupce <> konec **AND
**detail.detail_id
in (**select min(detail_id) keep (dense_rank first order by detail_time
desc) from detail WHERE **detail.master_id = master.id))
**, nebo s tím vaším sub-selectem. Je to asi spíš o SQL (HQL).

Snad napoví:
http://docs.jboss.org/hibernate/orm/4.3/manual/en-US/html_single/#querycriteria-detachedqueries
nebo v HQL
http://docs.jboss.org/hibernate/orm/4.3/manual/en-US/html_single/#queryhql-subqueries

*Petr

2013/6/28 Rastislav Siekel <sie...@prosoft.sk>

>  Vďaka za názor, ale príkaz
>
>
> *SELECT xyz FROM master WHERE exists (SELECT 1 FROM detail WHERE
> detail.master_id = **master.id** AND detail.sloupce <> konec)*
>
> vyberie všetky záznamy Master, pretože ku každému existuje nejaký detail,
> ktorý hovorí, že oprava nie je ukončená - prvý detail. Mňa zaujíma atribút
> ukončenie len na poslednom detaile.
>
>
> Rastislav "Bedo" Siekel
>
>
>
> ------------------------------
> Ing. Rastislav Siekel
> Prosoft s.r.o., Kuzmányho 8, 010 01 Žilina, Slovakia
> E-mail : <sie...@prosoft.sk> <sie...@prosoft.sk>
> Tel : 041/562 54 91
> Fax : 041/562 54 97
> Mobil : 0905 34 00 20
>
>
>
>  On 27. 6. 2013 18:44, Petr Franta wrote:
>
> Myslím si, že by to mělo jít vyřešit pomocí podmínky "exists" nebo "not
> exists":
>
> SELECT xyz FROM master WHERE exists (SELECT 1 FROM detail WHERE
> detail.master_id = master.id AND detail.sloupce <> konec)
>
> Nebo něco podobného.
>
> Petr
>
> 2013/6/27 Rastislav Siekel <sie...@prosoft.sk>
>
>>  Možno som to nenapísal úplne jasne - skúsim inak
>>
>> Mám záznamy o oprave - hlavičky, a ku každej môže byť 1 - N detailov
>> (priebeh opravy, na poslednej je aj prípadne ukončenie).
>> Vytváram SELECT pre zoznam opráv, ktoré ešte nemajú koniec, t.j. s
>> podmienkou, či posledný detail ešte nemá zadaný koniec (tie predošlé ho
>> určite nemajú zadaný, takže obyčajný JOIN by mi vybral všetky opravy, lebo
>> ku každému master existuje určite aspoň jeden detail, ktorý vyhovuje
>> podmienke).
>>
>> posledný detail zistím v SQL tak ako som uviedol nižšie.
>>
>> Rastislav "Bedo" Siekel
>>
>>
>> P.S.
>>
>>
>> *>From detail d where d.master=:master order by d.order*
>>  Tento príkaz vypíše pre 1 master všetky detaily, čo určite nie je to, čo
>> hľadám.
>>
>>
>>
>> ------------------------------
>> Ing. Rastislav Siekel
>> Prosoft s.r.o., Kuzmányho 8, 010 01 Žilina, Slovakia
>> E-mail : <sie...@prosoft.sk> <sie...@prosoft.sk>
>> Tel : 041/562 54 91
>> Fax : 041/562 54 97
>> Mobil : 0905 34 00 20
>>
>>
>>
>>    On 27. 6. 2013 16:11, Martin Beránek wrote:
>>
>> Není moc jasné zadání, ale hql
>>
>> From detail d where d.master=:master order by d.order
>>
>> Podle mě dělá co požadujete
>>
>> Martin
>> Dne 27.6.2013 15:36 "Rastislav Siekel" <sie...@prosoft.sk> napsal(a):
>>
>>>  Otočiť to na vyhľadávanie "detail JOIN master" by v tomto prípade
>>> nešlo. Výsledok má byť zoznam mastrov (filtrovaný na ďalšie podmienky) s
>>> tým, že sú zadané podmienky aj na posledný detail.
>>>
>>> Principiálne hľadám, či je možné v Hibernate spraviť SELECT * FROM(
>>> SELECT...)
>>>
>>>
>>> Rastislav "Bedo" Siekel
>>>
>>>
>>> ------------------------------
>>> Ing. Rastislav Siekel
>>> Prosoft s.r.o., Kuzmányho 8, 010 01 Žilina, Slovakia
>>> E-mail : <sie...@prosoft.sk> <sie...@prosoft.sk>
>>> Tel : 041/562 54 91
>>> Fax : 041/562 54 97
>>> Mobil : 0905 34 00 20
>>>
>>>
>>>
>>>  On 27. 6. 2013 15:11, ŠVARC Jiří wrote:
>>>
>>>  Nevím jestli jsem dobře porozuměl, ale nešlo by to realizovat
>>> vyhledáním v seznamu detailů s kritériem odkazu na mastera,  nastavením
>>> řazení a  query.setMaxResults(1)?
>>>
>>>
>>>
>>> *ing. Jiří Švarc**
>>> *Programmer Analyst
>>>
>>>
>>>
>>> *Asseco Central Europe, a.s.**
>>> *Solutions for Demanding Business
>>>
>>> Budějovická 778/3a, 140 00 Praha 4
>>> Czech Republic
>>> Mobile: +420 737 944 536
>>> jiri.sv...@asseco-ce.com
>>> www.asseco-ce.com
>>>
>>>
>>>
>>> *From:* konference-boun...@java.cz 
>>> [mailto:konference-boun...@java.cz<konference-boun...@java.cz>]
>>> *On Behalf Of *Rastislav Siekel
>>> *Sent:* Thursday, June 27, 2013 2:57 PM
>>> *To:* Java
>>> *Subject:* Hibernate SELECT bez FROM tabuľky
>>>
>>>
>>>
>>> Zdravím vospolok,
>>>
>>> chcel by som sa spýtať, či niekto neriešil nasledujúci problém:
>>>
>>> V Oracle mám tabuľky master a detail. Mám master a chcem k nemu nájsť 
>>> *posledný
>>> *detail, čo spravím v SQL takto:
>>>
>>> ... AND detail_id =
>>> (
>>>     SELECT * FROM
>>>     (
>>>         SELECT detail_id
>>>         FROM detail
>>>         ORDER BY detail_time DESC
>>>     )
>>>     WHERE rownum = 1
>>> )
>>> ...
>>>
>>>
>>> Tu som narazil na problém, že Hibernate pomocou Criteria API asi nevie
>>> spraviť "SELECT FROM (...) WHERE ...".
>>> Aj DetachedCriteria, aj Criteria si vyžadujú Entitu (DTO), nad ktorou
>>> pripravia SQL príkaz. Je nejaká možnosť ako toto obísť?
>>>
>>> Vďaka,
>>> Rastislav "Bedo" Siekel
>>>
>>>
>>>  ------------------------------
>>>
>>> Ing. Rastislav Siekel
>>> Prosoft s.r.o., Kuzmányho 8, 010 01 Žilina, Slovakia
>>> E-mail : <sie...@prosoft.sk> <sie...@prosoft.sk>
>>> Tel : 041/562 54 91
>>> Fax : 041/562 54 97
>>> Mobil : 0905 34 00 20
>>>
>>>
>>>
>>>
>>
>
>

Odpovedet emailem