gpt4 book ai didi

mysql - 复杂的 mySQL 查询,查找重复项,按日期和组排序

转载 作者:行者123 更新时间:2023-11-29 06:53:14 26 4
gpt4 key购买 nike

我正在尝试弄清楚如何编写我的查询。

首先,我正在表中寻找受骗者:

$query = "SELECT datum, element_skanning.objekt_element 
FROM element_skanning
INNER JOIN (SELECT objekt_element
FROM element_skanning
GROUP BY objekt_element
HAVING COUNT(id) > 1) dup
ON element_skanning.objekt_element = dup.objekt_element;
";

while($row = $stmt->fetch()){
echo "<tr>";
echo "<td>".$row['objekt_element']."</td>";
echo "<td>".$row['datum']."</td>";
echo "</tr>";
}

结果如下: enter image description here

你可以看到有很多骗子。
现在我想订购这些结果。

我想要按日期排列它们......但也要分组。

“23117-12”有三行,三个不同的日期。
我希望将它们分组......从最早的日期和 ASC 开始。

因此,取出最旧的日期,并列出该组中的其他结果。
然后,取出下一个受骗者的日期,列出这组受骗者。等等..

我需要更好地解释自己吗?

这怎么可能?

编辑

预期输出为: enter image description here

最佳答案

只需选择每个 objekt_element 的最小数据,即可将其用于排序:

SELECT es.datum, es.objekt_element 
FROM element_skanning es
INNER JOIN
(
SELECT objekt_element, MIN(datum) AS min_datum
FROM element_skanning
GROUP BY objekt_element
HAVING COUNT(*) > 1
) dup ON es.objekt_element = dup.objekt_element
ORDER BY dup.min_datum, es.objekt_element, es.datum;

关于mysql - 复杂的 mySQL 查询,查找重复项,按日期和组排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46667049/

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