gpt4 book ai didi

mysql - Union在mysql中与group by一起使用时不起作用?怎么了?

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

我写了一个查询,例如

(select meterID, timestamp from meter_data 
where timestamp between 1369282639 AND 1369282699
AND deviceID = "1"
GROUP BY meterID)
UNION

(select meterID, timestamp from meter_data
where timestamp between 1369282739 AND 1369282799
AND deviceID = "1"
GROUP BY meterID);

我期望从中得到 2 组数据,例如 - 我的表中有 4 个不同的meterID,因此它应该返回 8 条记录,但它只返回 4 条记录

最佳答案

为了帮助理解数据,您可以尝试以下操作

SELECT a.meterID, MAX(b.timestamp), MAX(c.timestamp)
FROM meter_data a
LEFT OUTER JOIN meter_data b ON a.meterID = b.meterID AND b.timestamp between 1369282639 AND 1369282699 AND b.deviceID = "1"
LEFT OUTER JOIN meter_data c ON a.meterID = c.meterID AND c.timestamp between 1369282739 AND 1369282799 AND c.deviceID = "1"
GROUP BY a.meterID

这应该返回每个仪表 ID 一行以及该仪表 ID 每个范围内的最大时间戳。

关于mysql - Union在mysql中与group by一起使用时不起作用?怎么了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17145434/

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