MySQL查询,用于计算一个人处理票据所需的时间

MySQL查询,用于计算一个人处理票据所需的时间,mysql,select,join,Mysql,Select,Join,我对这个门户网站很陌生。 如果我的问题似乎不完美,请原谅 我有两个表A和B,它们的1:n关系以id作为外键。 B表记录了每次更新票证时的历史记录 我希望为预期结果编写一个查询,如下所示: 车票ID(A)车票名称(A)所用时间(B) 5之间的差异(票证关闭时间-票证打开时间) 可能是从B表中的两个条目中查找时间差,这两个条目具有A表中相同的外键 我已经尝试了连接,但正在为此寻找一个更优化的查询 任何建议都将不胜感激。 谢谢像这样的东西应该能够计算出给定票证的最早和最新更新。字段名称是假定的,但应该

我对这个门户网站很陌生。 如果我的问题似乎不完美,请原谅

我有两个表A和B,它们的1:n关系以id作为外键。 B表记录了每次更新票证时的历史记录

我希望为预期结果编写一个查询,如下所示:

车票ID(A)车票名称(A)所用时间(B) 5之间的差异(票证关闭时间-票证打开时间)

可能是从B表中的两个条目中查找时间差,这两个条目具有A表中相同的外键

我已经尝试了连接,但正在为此寻找一个更优化的查询

任何建议都将不胜感激。
谢谢

像这样的东西应该能够计算出给定票证的最早和最新更新。字段名称是假定的,但应该会告诉您

SELECT
    a.ticket_id AS ticket_id,
    MIN(b.update_timestamp) AS first_update,
    MAX(b.update_timestamp) AS last_update,
FROM a
INNER JOIN b
    ON a.ticket_id = b.ticket_id
WHERE a.ticket_id = ?
GROUP BY a.ticket_id

您可以使用子查询而不是联接。第一个目标应该是正确的答案。如果您通过多种方式获得它,请使用MySQLs
EXPLAIN
找出哪一种性能更好。这些时间是否附加了SLA?重要的是考虑一个时钟从0600点到1800点,然后在1800点停止,直到第二天早上0600点才恢复。