php - 总登录时间

标签 php mysql mysqli

我正在使用 MySQL 5.6,想要通过 SQL 语句根据以下数据计算总和(分钟内):

第三列仅供引用,表示我期望 15 个值

 
Status   Date_Time            Total_hours<p></p>

<p>LogIn    2016-01-14 00:00:00<br/>
LogOut   2016-01-14 09:00:00    9
LogIn    2016-01-14 10:00:00<br/>
LogOut   2016-01-14 14:00:00    4
LogIn    2016-01-14 16:00:00<br/>
LogOut   2016-01-14 18:00:00    2</p>

<code>              hours Total ==>>  15
</code>

最佳答案

已更新以包含您的表和字段名称。

SELECT
loggedin.InOutStatus,
MAX(loggedin.Date_Time) AS start_time,
loggedout.Date_TimeAS end_time,
TIMEDIFF(MAX(loggedin.Date_Time), loggedout.Date_Time)
FROM empstatuslog AS loggedin
INNER JOIN empstatuslog AS loggedout ON (loggedin.InOutStatus = loggedout.InOutStatus
                                     AND loggedout.Date_Time > loggedin.Date_Time)
WHERE loggedin.InOutStatus= 'LogIn'
AND loggedout.InOutStatus= 'LogOut'
GROUP BY loggedin.InOutStatus

关于php - 总登录时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34896494/

相关文章:

php - Paypal ipn 监听器 feof() : 30 is not a valid stream resource

c# - 允许通过 C# 访问安装在 Amazon EC2 上的 MySQL 服务器

php - 如果查询使用多个连接,mysql 事务会起作用吗?

php - 从 mysql 获取今天的不同日期

javascript - 来自 php 的 mysql 查询不起作用,但它在不同的 php 文件中工作

javascript - 动态家谱遍历 php javascript

php - 保留换行符的正则表达式

php - mySQL with php function - 使用php循环输入数据

php - Laravel `Item` 有很多,只有在过去时才返回

javascript - 在 Safari 上设置跨站 cookie