我正在创建eBay风格的搜索窗格,允许用户根据特定的标准设置他们的结果。例如:
标签 文学(8)小说(4)英语(4)美国(3)非小说(2)
具有该属性的结果数放在括号中。最初,我通过在显示结果循环中放置以下代码来构建计数器:
if(isset($tags[$row['tags']])) {
$tags[$row['tags']]++;
} else {
$tags[$row['tags']] = 1;
}
然后,我分页了我的结果,这停止了工作-查询只返回足够的数据,您在页面上,所以计数器只代表结果在该页。
有人能建议另一种方法吗?
发布于 2010-03-23 17:13:24
您必须对tag, COUNT(*) in <table> GROUP BY tag
运行第二个查询,以获得每个标记的总数。
编辑:
看看这个。这是我买的新的,但看上去像你想要的。
使用SELECT SQL_CALC_FOUND_ROWS
启动查询,然后使用SELECT FOUND_ROWS();
跟踪查询
发布于 2010-03-23 17:13:30
SELECT COUNT(*) FROM books WHERE tagid=$tagid
然而,这需要另一个查询。请提供有关您的分页方法的更多信息。
https://stackoverflow.com/questions/2501899
复制相似问题