Ulozit do master tabulky ID posledniho detailu nebo i jeho stav.

  Lukas


2013/6/28 Rastislav Siekel <sie...@prosoft.sk>:
> Toto som asi presne nepochopil. Čo sa dá denormalizovať na master-detail
> väzbe, keď hľadám posledný detail?
>
>
> Rastislav "Bedo" Siekel
>
>
> ________________________________
> Ing. Rastislav Siekel
> Prosoft s.r.o., Kuzmányho 8, 010 01 Žilina, Slovakia
> E-mail : <sie...@prosoft.sk>
> Tel : 041/562 54 91
> Fax : 041/562 54 97
> Mobil : 0905 34 00 20
>
>
>
> On 28. 6. 2013 9:24, Lukas wrote:
>
> Denormalizujte schema a mate po problemu.
>
>   Lukas
>
>
> Sent from Samsung Mobile
>
>
>
> -------- Original message --------
> From: Rastislav Siekel <sie...@prosoft.sk>
> Date:
> To: Java <konference@java.cz>
> Subject: Re: Hibernate SELECT bez FROM tabuľky
>
>
> 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>
> 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>
>> 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>
>>> 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] 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>
>>> Tel : 041/562 54 91
>>> Fax : 041/562 54 97
>>> Mobil : 0905 34 00 20
>>>
>>>
>>>
>>
>
>
>

Odpovedet emailem