请问个问题:如果有一张book表,怎么实现在分页查询book表结果的基础上追加一个统计book表所有记录条数的字段呢因为想一次实现分页查询后同时获得总的条数,用于计算总的页数。

解决方案 »

  1.   

    举例说明
    SELECT *,(select count(*) from book) from book
      

  2.   

    select a.*,b.cnt
    from book表 a, (select count(*) as cnt from book表) as b
    order by a.col1 
    limit 20,10
      

  3.   

    select SQL_CALC_FOUND_ROWS * from book;
    select FOUND_ROWS();两个一起运行  你就会有惊喜
      

  4.   

    谢谢大家的帮助,问题解决了,虽然用的是自己想出来的一个比较麻烦的办法select  *  from(select  *  from  book)   left  joint  (select  count(*)  from  book)  on(1=1);但是,现在有遇到新问题了!<s:iterator value="cats" var="c1">
    ${c1.name },${name },<s:property value="name"/>
    上面三种都可以,这是为什么呢??,el和Ogln在这里的区别是什么呢?
    他们执行的原理是怎样的啊?
    <s:iterator value="#c1.subCats" var="c2">
    <!--上面为什么是#c1.subCats呢,这样的Ogln表达
    不是访问context区里面的内容吗?这是为什么呢?-->
    ${c2.name }
    <s:iterator/>
    <s:iterator/>
    上面的cats是Category元素对象list集合,Category有一个subCats集合属性,
    里面的元素也是Category对象上面的问题有点多,现在都被el和Ogln给弄迷糊了,希望能得到详细的解答,
    先谢过各位高手大侠们了!小弟不胜感激呀!会以加倍的努力学习来回报大家!
      

  5.   

    谢谢大家的帮助,问题解决了,虽然用的是自己想出来的一个比较麻烦的办法select  *  from(select  *  from  book)   left  joint  (select  count(*)  from  book)  on(1=1);但是,现在有遇到新问题了!<s:iterator value="cats" var="c1">
    ${c1.name },${name },<s:property value="name"/>
    上面三种都可以,这是为什么呢??,el和Ogln在这里的区别是什么呢?
    他们执行的原理是怎样的啊?
    <s:iterator value="#c1.subCats" var="c2">
    <!--上面为什么是#c1.subCats呢,这样的Ogln表达
    不是访问context区里面的内容吗?这是为什么呢?-->
    ${c2.name }
    <s:iterator/>
    <s:iterator/>
    上面的cats是Category元素对象list集合,Category有一个subCats集合属性,
    里面的元素也是Category对象上面的问题有点多,现在都被el和Ogln给弄迷糊了,希望能得到详细的解答,
    先谢过各位高手大侠们了!小弟不胜感激呀!会以加倍的努力学习来回报大家!
      

  6.   

    谢谢大家的帮助,问题解决了,虽然用的是自己想出来的一个比较麻烦的办法select  *  from(select  *  from  book)   left  joint  (select  count(*)  from  book)  on(1=1);但是,现在有遇到新问题了!<s:iterator value="cats" var="c1">
    ${c1.name },${name },<s:property value="name"/>
    上面三种都可以,这是为什么呢??,el和Ogln在这里的区别是什么呢?
    他们执行的原理是怎样的啊?
    <s:iterator value="#c1.subCats" var="c2">
    <!--上面为什么是#c1.subCats呢,这样的Ogln表达
    不是访问context区里面的内容吗?这是为什么呢?-->
    ${c2.name }
    <s:iterator/>
    <s:iterator/>
    上面的cats是Category元素对象list集合,Category有一个subCats集合属性,
    里面的元素也是Category对象上面的问题有点多,现在都被el和Ogln给弄迷糊了,希望能得到详细的解答,
    先谢过各位高手大侠们了!小弟不胜感激呀!会以加倍的努力学习来回报大家!