请帮助我编写以下情况的查询。
我有2张桌子
机器停机时间:
Name Starttime Endtime
M1 12/15/2019 10.00 12/15/2019 14.00
EmployeeTime:
Employee Clockin ClockOut
E1 12/15/2019 09.00 12/152019 10.00
假设我将时间输入修改为:
Employee Clockin ClockOut
E1 12/15/2019 12.00 12/15/2019 13.00
我如何在停机时间表的下面2个条目中插入(即,由于员工记录与停机时间记录重叠)。
机器停机时间:
Name Starttime Endtime
M1 12/15/2019 10.00 12/15/2019 12.00
M1 12/15/2019 13.00 12/15/2019 14.00
您可以使用工会来获取停机时间:
SELECT d.Name,d.Starttime, e.Clockin AS Endtime
FROM employee_table e
INNER JOIN downtime_table d
ON e.Clockin BETWEEN d.Starttime AND d.Endtime
UNION ALL
SELECT d.Name,e.Clockout AS Starttime, d.Endtime
FROM employee_table e
INNER JOIN downtime_table d
ON e.ClockOut BETWEEN d.Starttime AND d.Endtime