SQL查询:在一个查询中获取前20个项和总项数

Ber*_*ert 1 mysql database

是ITE可能使一个MySQL查询中,你获得最新的20个项目,所有的项目的数量,而不使用2个查询.查询越少越好,不是吗?我需要它进行分页.

SELECT item.* FROM #__gallery_items AS item ORDER BY created DESC LIMIT 0,20
Run Code Online (Sandbox Code Playgroud)

也许最好的是每一行都有一个名为'totalitems'的额外列,包含项目总数?

是否有可能,如果可以,怎么样?谢谢!

Mat*_*Cat 6

SELECT SQL_CALC_FOUND_ROWS item.* FROM #__gallery_items AS item ORDER BY created DESC LIMIT 0,20

SELECT FOUND_ROWS()
Run Code Online (Sandbox Code Playgroud)

两个查询,这是唯一的方式^^

  • http://www.phpdevblog.net/2009/06/mysql-pagination-sql-calc-found-rows-vs-count-query.html很奇怪..! (2认同)