Php MYSQL中输入和输出之间的持续时间
我是新的MYSQL,现在我尝试了一些东西这里是我的查询不准确的结果 任何一个朋友都有处理这种情况的经验 不需要Php MYSQL中输入和输出之间的持续时间,php,mysql,datetime,Php,Mysql,Datetime,我是新的MYSQL,现在我尝试了一些东西这里是我的查询不准确的结果 任何一个朋友都有处理这种情况的经验 不需要 TIMEDIFF(time where type=in, time where type=out) 3:35:30 time type=in, 03:35:30 time type=out Output 0 您可以按照下面的步骤进行尝试- SELECT DISTINCT a.userid, (TIME_TO_SEC(b.time) - TIME_TO_SEC(a.time)) A
TIMEDIFF(time where type=in, time where type=out)
3:35:30 time type=in, 03:35:30 time type=out
Output 0
您可以按照下面的步骤进行尝试-
SELECT DISTINCT a.userid, (TIME_TO_SEC(b.time) - TIME_TO_SEC(a.time)) AS 'time_diffrence' FROM
(SELECT userid,`time` FROM mytable WHERE `type`='in') a
JOIN (SELECT userid,`time` FROM mytable WHERE `type`='out') b ON a.userid=b.userid
这是一个简单的解决方案,但是可以针对单个时间和多个用户等有多个超时。因此,在查询需要更改的地方,可以有很多组合。在
用户ID上加入使用而不是日期数据库似乎很不规范。officialtimin
和officialtimeout
都应该在一个表中。Rajesh kumar很抱歉上次查询不正确查询我更新了我的问题请查看Vipin和Rajesh我有查询输入和输出的位置计算时间持续时间这是我的问题显示你需要什么输出…意思是你想要一行一行吗用户喜欢先入和后出之间的差异,否则…感谢您的回答显示错误#1052-字段列表中的“userid”列不明确,这是什么b.time和a.time?使用DISTINCT,回答是相同的时间重复,而不是我已经测试过的最后一个代码
SELECT DISTINCT a.userid, (TIME_TO_SEC(b.time) - TIME_TO_SEC(a.time)) AS 'time_diffrence' FROM
(SELECT userid,`time` FROM mytable WHERE `type`='in') a
JOIN (SELECT userid,`time` FROM mytable WHERE `type`='out') b ON a.userid=b.userid