我有两张桌子:位置和上传。它们包含用户名和时间戳以及其他信息。我想知道玩家在上传内容之前花了多长时间。为此,我需要位置表中最低的时间戳来获取它们的开始时间。然后我需要从第一个上传时间戳中减去它。
所以,换句话说:我想知道玩家在上传第一个内容之前在游戏中花了多长时间。
我可以写一个php交易来处理计算,但我觉得它可能有点矫枉过正,而且可能是一个基本的SQL命令可以自动完成。我正在集思广益,知道如何做到这一点,这就是我到目前为止所做的:
Select a.UserID, DATEDIFF(Min(a.timestamp),Min( b.Timestamp))
From db.Uploads a, db.Position b
WHERE
a.UserID = b.UserID
GROUP BY a.UserID
有人有想法吗?我知道我的代码非常蹩脚,但目前我的目标是什么。
答案 0 :(得分:0)
出于某种原因,使用DateDiff对我来说并不是非常疯狂,但是当我进行正常的减法时,它有效吗? Bluehost的表设置必须做一些奇怪的事情。
Select a.UserID, Min(a.timestamp)-Min(b.Timestamp)
From db.Uploads a, db.Position b
WHERE
a.UserID = b.UserID
GROUP BY a.UserID