如何使用HQL连接提供额外的参数

xrcwrn

我想在hql中给额外的参数加上连接条件。在SQL查询中我写

select a.*,ur.fname,ur.lname
from 
atom as a
left join user as ur
on 
a.id=ur.id
left join album as al
on 
a.id=al.aid
and al.name='Profile'
left join post_images as pi
on 
a.id=pi.aid
and pi.is_album_cover='yes'
where
(ur.fname like '%n%'
or ur.fname like '%n%')
and a.status='active';

可以正常工作并给出期望的结果。在hql中,我不知道如何通过join给额外的参数来获取我编写的数据(没有额外的参数)

feeds = (List<Atom>) session.createQuery(
             "select distinct atom from Atom as atom "
             + "left join fetch atom.albums  as album "
             + "left join fetch album.postImageses as coverImage "
             + "left join fetch atom.user as user "
             + "where "
             +  "(atom.user.fname like :name "
             + "or atom.user.lname like :name )"
              + "and album.name=:albumName "
             + "and coverImage.isAlbumCover=:isCover "
             + "and atom.status=:status ")
             .setParameter("albumName", "Profile")
             .setParameter("name", '%' + name + '%')
            .setParameter("name", '%' + name + '%')
             .setParameter("isCover", "yes")
             .setParameter("status", "active")
             .setFirstResult(0)
             .setMaxResults(30)
             .list();

这没有给出任何结果,我怎么能给join附加参数

萨哈什·沙(Saharsh Shah)

在HQL中,您可以使用带有关键字的HQL提供额外的加入条件。

Chech协会并加入HQL

试试这个:

您的HQL ::

select distinct atom 
from Atom as atom 
left join atom.albums as album with album.name= "Profile" 
left join atom.postImageses as coverImage with coverImage.isAlbumCover="yes"
left join atom.user as user 
where (user.fname like name or user.lname like name) and atom.status="active";

您的代码::

feeds = (List<Atom>) session.createQuery(
               "select distinct atom from Atom as atom "
             + "left join atom.albums as album with album.name=:albumName "
             + "left join atom.postImageses as coverImage with coverImage.isAlbumCover=:isCover "
             + "left join atom.user as user "
             + "where (user.fname like :name or user.lname like :name) "
             + "and atom.status=:status ")
             .setParameter("albumName", "Profile")
             .setParameter("name", '%' + name + '%')
             .setParameter("isCover", "yes")
             .setParameter("status", "active")
             .setFirstResult(0)
             .setMaxResults(30)
             .list();

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

此函数如何不使用额外的参数

来自分类Dev

如何使用Guice将参数传递给提供程序?

来自分类Dev

#之后如何使用nerdcommenter提供额外的空间

来自分类Dev

如何使用Dapper连接到ProgressDB数据提供程序?

来自分类Dev

如何使用RabbitMQ主机列表连接参数

来自分类Dev

如何使用Firebase从动态链接获取额外的参数?

来自分类Dev

Codeigniter使用额外的url参数

来自分类Dev

如何使用ninject将参数传递给客户提供程序

来自分类Dev

如果隐式提供了参数,如何为函数调用提供额外的参数?

来自分类Dev

如何解决通话中的额外参数?

来自分类Dev

如何使用提供的参数推断函数的返回类型?

来自分类Dev

如何通过Ninject提供额外的参数?

来自分类Dev

开闭原则-如何使用提供者的参数进行重构

来自分类Dev

您如何为协会提供额外的标准?

来自分类Dev

如何在Hibernate HQL中对LIKE运算符使用参数化查询?

来自分类Dev

C ++-使用额外的参数排序

来自分类Dev

如何使用教义QueryBuilder将具有额外参数和额外条件的多对多表联接在一起

来自分类Dev

如何添加额外的POST参数?

来自分类Dev

如何使用github-flask为{+ path}提供URL参数?

来自分类Dev

是否可以使用额外的LAN卡提供与外部设备的有线以太网连接?

来自分类Dev

then()如何提供其参数

来自分类Dev

find命令如何知道要使用“ -exec ... {} +”提供的参数?

来自分类Dev

如何传递一个额外的参数

来自分类Dev

如何遍历提供的参数?

来自分类Dev

如果未使用Exception提供参数,如何从函数返回

来自分类Dev

如何使用额外的参数解析laravel容器中的类?

来自分类Dev

如何使用提供的SSH密钥连接到SFTP?

来自分类Dev

如何从powershell输出中删除额外的参数

来自分类Dev

如何使用额外的 DBContext?

Related 相关文章

  1. 1

    此函数如何不使用额外的参数

  2. 2

    如何使用Guice将参数传递给提供程序?

  3. 3

    #之后如何使用nerdcommenter提供额外的空间

  4. 4

    如何使用Dapper连接到ProgressDB数据提供程序?

  5. 5

    如何使用RabbitMQ主机列表连接参数

  6. 6

    如何使用Firebase从动态链接获取额外的参数?

  7. 7

    Codeigniter使用额外的url参数

  8. 8

    如何使用ninject将参数传递给客户提供程序

  9. 9

    如果隐式提供了参数,如何为函数调用提供额外的参数?

  10. 10

    如何解决通话中的额外参数?

  11. 11

    如何使用提供的参数推断函数的返回类型?

  12. 12

    如何通过Ninject提供额外的参数?

  13. 13

    开闭原则-如何使用提供者的参数进行重构

  14. 14

    您如何为协会提供额外的标准?

  15. 15

    如何在Hibernate HQL中对LIKE运算符使用参数化查询?

  16. 16

    C ++-使用额外的参数排序

  17. 17

    如何使用教义QueryBuilder将具有额外参数和额外条件的多对多表联接在一起

  18. 18

    如何添加额外的POST参数?

  19. 19

    如何使用github-flask为{+ path}提供URL参数?

  20. 20

    是否可以使用额外的LAN卡提供与外部设备的有线以太网连接?

  21. 21

    then()如何提供其参数

  22. 22

    find命令如何知道要使用“ -exec ... {} +”提供的参数?

  23. 23

    如何传递一个额外的参数

  24. 24

    如何遍历提供的参数?

  25. 25

    如果未使用Exception提供参数,如何从函数返回

  26. 26

    如何使用额外的参数解析laravel容器中的类?

  27. 27

    如何使用提供的SSH密钥连接到SFTP?

  28. 28

    如何从powershell输出中删除额外的参数

  29. 29

    如何使用额外的 DBContext?

热门标签

归档