我有一个返回多条记录的 HQL。
例如
select * from employees where surname like 'A%' order by employee_id
如何在不遍历列表的情况下访问第三条记录中的第三个字段?我在网上搜索过,但空手而归。
我知道 get 函数,但列表是对象列表(即不是特定类),所以我不能使用类似的东西:
myList.get(2).getSurname();
谢谢
我有一个返回多条记录的 HQL。
例如
select * from employees where surname like 'A%' order by employee_id
如何在不遍历列表的情况下访问第三条记录中的第三个字段?我在网上搜索过,但空手而归。
我知道 get 函数,但列表是对象列表(即不是特定类),所以我不能使用类似的东西:
myList.get(2).getSurname();
谢谢
如果您有一个列表,那么您可以从其中获取第三个项目list.get(2)
,就像任何地方一样。如果您做了类似的事情Query.iterate()
,那么您故意要求按需加载结果而不是全部预先加载,并且您会被这样做的后果所困扰。如果您在调用next()
几次时遇到问题,请修复order by
查询的子句以将该记录放在首位。否则Query.list()
请改用,它将查询的整个结果作为列表一次加载到内存中。
至于第三个字段,当您使用 HQL 时,您加载的是对象,而不是字段,因此以这种方式谈论字段并没有任何意义。