Php 按组分页
我的MySQL表中有一条记录,类似于: idPostcontentpostdate 1 A2013-01-31 2B2013-01-31 3C2013-01-30 4D2013-01-30 5E2013-01-29 6F2013-01-29 我想用这样的方式来展示它 2013-01-31 A B 2013-01-30 C D 2013-01-29 E F 我可以通过group by显示上述内容,但不能在group by中添加分页Php 按组分页,php,mysql,pagination,Php,Mysql,Pagination,我的MySQL表中有一条记录,类似于: idPostcontentpostdate 1 A2013-01-31 2B2013-01-31 3C2013-01-30 4D2013-01-30 5E2013-01-29 6F2013-01-29 我想用这样的方式来展示它 2013-01-31 A B 2013-01-30 C D 2013-01-29 E F 我可以通过group by显示上述内容,但不能在group by中添加分页 如果有人可以帮助我如何添加分页分组 您可以这样做: while(
如果有人可以帮助我如何添加分页分组 您可以这样做:
while( $row = $query_prepared->fetch( PDO::FETCH_ASSOC ) )
{
if( $date <> $row['postdate'] )
{
echo '<br>' ,$row['postdate'];
}
$date = $row['postdate'];
echo '<br>' ,$row['Postcontent'];
}
这将输出:
2013-01-31
A
B
2013-01-30
C
D
2013-01-29
E
F
这个怎么样
确保为postdate编制索引,甚至在(postdata、Postcontent)上编制索引,以获取覆盖索引
注意,有些人会认为这是错误的,因为您现在使用SQL格式化(HTML),但使用这种方法可以获得更干净的客户端代码
运行此查询
SELECT
postdate
, GROUP_CONCAT(Postcontent SEPARATOR '<br />') 'postcontent_formatted'
FROM
your_table
GROUP BY
postdate DESC
选择
过期
,组内容(后内容分隔符“
”)“后内容格式”
从…起
你的桌子
分组
后日期描述
PHP代码
<?php
while( $row = $query_prepared->fetch( PDO::FETCH_ASSOC ) ) {
echo $row['postdate'] . '<br />';
echo $row['postcontent_html_formatted'] . '<br />';
}
?>
你能展示一下你已经尝试过的代码吗?@Vikrant Randhawa发布了一种新的处理方法。
<?php
while( $row = $query_prepared->fetch( PDO::FETCH_ASSOC ) ) {
echo $row['postdate'] . '<br />';
echo $row['postcontent_html_formatted'] . '<br />';
}
?>