我对MySQL查询有点问题,这是我的MySQL数据库结构:
表用户
hid(PK)
表格请求
id (PK), hid, word, time
表单击
id, rid (FK),time
我应该获得请求与其相关点击之间的平均时间...我已经尝试了这个,但我不确定它是否正常工作:
SELECT TIMESTAMPDIFF(SECOND,r.time,c.time)
FROM requests r RIGHT JOIN clicks c ON r.id=c.rid
WHERE r.hid='$hid'
有人可以告诉我,如果我做得对,并解释我为什么不这样做?我将一些数字作为查询结果,但它们似乎并不正确
答案 0 :(得分:0)
如果您想获得平均时间,则忘记在查询中使用它(除了忘记“平均”结果外,它看起来还不错)。
试试这个:
SELECT AVG(TIMESTAMPDIFF(SECOND,r.time,c.time)) as avg_secs_diff
FROM requests r RIGHT JOIN clicks c ON r.id=c.rid
WHERE r.hid='$hid'
GROUP BY r.hid