这是我的数据库布局:
- ID (int - 唯一主键
- user (int) - 我按列搜索的用户的外
name
键 - starttime (timestamp) - 会话开始时间
- endtime (timestamp) - 会话结束时间
- idletime (int) - 以分钟为单位的空闲时间
例如,我想知道特定玩家在线的分钟数。
以下查询工作正常。我得到大约 3443 分钟。
SELECT user,
SUM(TIMESTAMPDIFF(MINUTE,starttime,endtime)-idletime)
FROM gc_sessions
WHERE user = 139
但是,如果我想通过连接来执行此操作,我可以使用以下查询得到 8。
SELECT name,
SUM(TIMESTAMPDIFF(MINUTE,starttime,endtime)-idletime)
FROM gc_sessions
JOIN gc_users ON gc_user.id = gc_sessions.id
WHERE name LIKE "variell"
我的查询有什么问题?