HQL中lements的使用

在传递索引和元素给集合时(elements and indices函数)和传递子查询的结果集时,SQL函数any, some, all, exists, in都是被支持的:

 

可编写如下Hql 语句完成查询:

HQL代码  
select Blog    
from Blog, Book   
where Blog.author in elements(Book.authors)   
    and Book.id=?  
 

对应的Sql近似如下:
Sql代码
  1. select  blog.*   
  2. from  blog, book   
  3. where  (blog.author  in  ( select  author.authorid  
  4.         from  book_author   
  5.         where  book.id=book_author.bookid))   
  6.     and  book.id=?  

 

 

你可能感兴趣的:(sql,Blog)