我的数据库表如图
我想把FatherId为1的记录(总共10项记录)筛选出来,每页显示4条记录……请各位高手帮帮忙
pageSize为每页显示数目,即4;   pageNow 为当前的页码;
我是这样写的
"select top" + pageSize+ "(Title,Author,ReadCount,ReCount)" +"from title where TitleId not in (select top "+((pageNow-1)*pageSize) + "TitleId from title and FatherId="+a
可是后台报错了 

解决方案 »

  1.   

    不同数据库支持不同的分页语法,不知道你是啥数据库?看你用了 top 关键字,那么似乎是 SQL Server?这里的问题,应该是你没有正确使用空格,比如:
    "select top  " + pageSize+ "  Title,Author,ReadCount,ReCount  " +" from title where TitleId not in (select top "+((pageNow-1)*pageSize) + "  TitleId from title and FatherId="+a然后执行之前,把语句显示出来看看,严重关注下空格之类的问题。
      

  2.   

    pageNow  a  这两个具体点?
      

  3.   

    额!!  直接用hibernate  里面就有自带的分页查询
      

  4.   

    怎么用limit语句呢 我不会呀
      

  5.   

    http://www.fuchaoqun.com/2009/04/efficient-pagination-using-mysql/