1

次のように、ORDER の java.util.RandomAccessSubList を返す HQL クエリがあります。SubList のオフセットは 1 であるため、クエリ結果リストの最初の要素にはアクセスできません。

SELECT vendor.order FROM OrderVendor vendor WHERE vendor.user.id=? ORDER BY vendor.order.creationTime desc

select order1_.order_id as order1_18_,(..... other fields....) 
from ORDER_VENDOR ordervendo0_ 
inner join ORDER order1_ on ordervendo0_.order_id=order1_.order_id, 
where ordervendo0_.user_id=? 
order by order1_.creationTime desc

別の方法を試しました。最初に OrderVendor のリストを取得してから、メソッド OrderVendor.getOrder() を使用して注文にアクセスします。しかし、少しうるさいです!

FROM OrderVendor vendor WHERE vendor.user.id=? ORDER BY vendor.order.creationTime desc

select ordervendo0_.vendor_id as vendor1_20_ (....other fields...) 
from ORDER_VENDOR ordervendo0_, 
ORDER order2_ 
where ordervendo0_.order_id=order2_.order_id 
and ordervendo0_.user_id=? 
order by order2_.creationTime desc limit ?

私の質問は、最初のクエリが SubList を返す理由と SubList のオフセットが 1 である理由です。

ありがとう !

ゲルン

4

0 に答える 0