3

我在找到最长的响应时间和最短的响应时间时遇到了问题。

三张表:

T1.RESPONCE
resp_id (bigint)
resp_text (text)
resp_created_date (datetime)
resp_closed_date (datetime)

T2.RESP_UPDATE_RELATION
resp_id (bigint)
update_id (bigint)

T3.UPDATES
update_id (bigint)
update_text (text)
update_created_date (datetime)
update_closed_date (datetime)

T2.RESP_UPDATE_RELATION 是为每个响应的多个更新创建的

我想为每个响应找到最长和最快的更新时间。

有什么聪明的mysql吗?或者我需要为此包含 PHP 代码吗?

- - - - - - - - - - - - - - - - - - 编辑 - - - - - - - ------------------

刚刚醒来..和thoughth。我已经尝试了一个星期了,看来我做得对。结果让我很困惑。所以也许我没有做错 - 而是问了错误的问题。

所以,上面的要求有点错误!

我真正的要求是:

I would like the result from the last 30 days of
the fastest opening update (update_created_date)
the slowest opening update (update_created_date)
the fastest closing update (update_closed_date)
the slowest closing update (update_closed_date)
4

1 回答 1

0

加入所有三个表的外键并按 resp_id 分组。您现在可以使用/上MINMAX聚合函数选择第一个和最后一个更新。如果您希望查询产生时间差,您可以使用顶部的or函数。update_created_dateupdate_closed_dateTIMEDIFFTIMESTAMPDIFF

于 2012-10-16T22:11:38.570 回答