qiang1ren
qiang1ren
2014-03-12 16:14
浏览 247
已采纳

获取子表符合特殊条件的集合,如何写sql?使用DetachedCriteria更佳

举个例子:A表为书的分类;B表为书;A与B为一对多关系;B表其中一个字段为该书总页数的属性。现在要获取同时包含总页数为x与总页数为y的分类集合,应该怎么写sql语句呢?
实际项目比这个要复杂,我只是捡重点描述,因为涉及到A表结果翻页等问题,所以不方便先取出来再进行硬编码筛选。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • zyn010101
    zyn010101 2014-03-12 16:29
    已采纳

    select distinct A.*,B.page_num from A,B where A.id = B.a_id where B.page_num=x or B.page_num=y;

    点赞 评论
  • lorewolf311
    tianchao_ 2014-03-12 16:34

    select distinct B.catId,A.catName from B,A where (B.pageNum=x or B,pageNum=y) and B.catId=A.id

    点赞 评论
  • hbyk3344
    hbyk3344 2014-03-13 17:20

    select * from A where exists (select 1 from B where (B.pageConunt=x or B.pageConunt=y) and B.id=a.bookId)

    点赞 评论

相关推荐