加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – GROUP BY mysql只显示一行.但是也想要重复

发布时间:2020-12-13 17:15:36 所属栏目:PHP教程 来源:网络整理
导读:我的表结构是 id order_id location time date 1 951 x 2/03/2013 2 951 x 13:00 2/03/2013 3 951 y 3/03/2013 我想在php中显示这些与日期类似的东西 Date 2/03/2013Orderid 951 location xOrderid 951 location xDate 3/03/2013Orderid 951 location y mysq
我的表结构是

id  order_id  location time    date
 1   951        x              2/03/2013
 2   951        x      13:00   2/03/2013
 3   951        y              3/03/2013

我想在php中显示这些与日期类似的东西

Date 2/03/2013
Orderid 951 location x
Orderid 951 location x

Date 3/03/2013
Orderid 951 location y

mysql查询我正在执行的是

select * from table where order_id=951 GROUP BY date ORDER BY id ASC

但是此查询仅返回相同数据的第一行.如何按日期类别显示所有重复项.如何在php中使用它来显示数据,将日期作为单独的变量.

我正在编辑问题让你知道日期可以是任何我想要按日期在组中显示的订单ID,包括重复.

解决方法

如果要显示表中的所有行,最好是ORDER BY date,id然后在PHP中进行分组.

$result = mysql_query("select * from table ORDER BY data ASC,id ASC");
$last_date = "";
while(($row=mysql_fetch_assoc($result)))
{
    if($last_date != $row['date'])
    {
        echo "Date " . $row['date'] . "n";
    }
    echo "Orderid ". $row['order_id']." location " . $row['location']. "n";
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读