Hql 查询map中key值?
2010-06-21 17:12
218 查看
最近做项目,由于常常要操作对象关联的map中的值和键,使得查找很慢,于是想了想能不能用hql直接查找map中的key然后比对呢?
最后功夫不负有心人,终于被我找到了。
类如下:
查找没课的老师:
最后功夫不负有心人,终于被我找到了。
类如下:
public class StaffCourseTable extends BaseEntity { @OneToMany(mappedBy = "courseTable") @MapKey(name = "section") private Map<Section, StaffCourseTableEntry> sectionEntries = new HashMap<Section, StaffCourseTableEntry>(); }
查找没课的老师:
@SuppressWarnings("unchecked") @Transactional(readOnly = true) public List<Staff> findBySection(Section section) { Query query = entityManager .createQuery("select distinct table.staff from StaffCourseTable table where (:section not in indices(table.sectionEntries) )"); query.setParameter("section", section); return query.getResultList(); }
相关文章推荐
- 怎样用hibernate的hql查询查询成map或list
- Spring JdbcTemplate 查询出的Map,是如何产生大小写忽略的Key的?
- Spring JdbcTemplate 查询出的Map,是如何产生大小写忽略的Key的?
- Hql查询结果动态组装 List(map),List(bean),List(list),List(set)等格式(转)
- Spring JdbcTemplate 查询出的Map,是如何产生大小写忽略的Key的?
- hql查询返回list,map,自定义类型
- MyBatis使用@MapKey注解接收多个查询记录到Map中,以便方便地用get()方法获取字段的值
- hibernate通过sql查询返回一个key value对应的map对象型集合
- 怎样用hibernate的hql查询查询成map或list
- 使用Map集合开发电话簿程序,以电话号码为key,姓名为value,实现电话号码的添加,查询和删除 操作
- 怎样用hibernate的hql查询查询成map或list
- hql语句查询返回List<Map>
- mybatic+mysql select查询返回map,key是小写解决方法
- mybatis处理查询map列表属性为null的问题,而导致查询map无该key对象
- MyBatis查询两个字段,返回Map,一个字段作为key,一个字段作为value的实现
- hibernate hql 查询指定…
- mybatic中查询数据为多表连接,resultmap写法
- Hibernate通过sql查询返回list或者是map
- Hibernate查询时,使用HQL和SQL的区别(SUM语句)
- sqlalchemy foreign key查询和backref