次のように、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 である理由です。
ありがとう !
ゲルン