gpt4 book ai didi

mysql - GROUP BY 更改更改 ORDER BY 排序

转载 作者:行者123 更新时间:2023-11-29 03:27:23 25 4
gpt4 key购买 nike

我有一个用 PHP 和 MySQL 编写的网络应用程序。

一个 SQL 命令(下面提到)的结果是这样的:

enter image description here

SELECT
t.subject, c.parent_id, c.date_time
FROM
tbl_tickets_contents c
JOIN
tbl_tickets t
ON
t.id = c.parent_id
ORDER BY
c.date_time DESC;

我想删除重复项。所以我将 SQL 脚本更改为:

SELECT
t.subject, c.parent_id, c.date_time
FROM
tbl_tickets_contents c
JOIN
tbl_tickets t
ON
t.id = c.parent_id
GROUP BY
c.parent_id
ORDER BY
c.date_time DESC;

我假设这个改变会给我这个结果:

enter image description here

但是输出是:

enter image description here

GROUP BY 似乎更改了ORDER BY 排序顺序。我想拥有较新的 date_time 的记录,但在这次更改之后我有较旧的 date_time 的记录!

我该如何解决这个问题?我的错误是什么?

最佳答案

我修改了您的代码,它对我有用。

我将 c.date_time 更改为 MAX(c.date_time) as date_time 以便您获得最新的日期时间。

并将 c.date_time 的顺序更改为 date_time

SELECT
t.subject,
c.parent_id,
MAX(c.date_time) as date_time
FROM
tbl_tickets_contents c
JOIN
tbl_tickets t
ON
t.id = c.parent_id
GROUP BY
c.parent_id
ORDER BY
date_time DESC;

SQL Fiddle Example

关于mysql - GROUP BY 更改更改 ORDER BY 排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34379186/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com