假设我有以下行:
'employee' , 'is_here' , 'ts'
1 , 1 , 22
2 , 1 , 33
1 , 0 , 44
1 , 0 , 55
2 , 0 , 66
1 , 0 , 77
2 , 0 , 88
1 , 1 , 99
有什么方法可以在is_here
更改时显示某些员工的结果?
例如,我想获取员工#1 is_here
更改的行,因此输出将为:
1,1,22 1,0,44 1,1,99
我猜这将是具有挑战性的:)
答案 0 :(得分:1)
只要您当时只为一名员工运行查询
set @state = -1;
select employee,
@state := is_here as changed_to,
ts
from working
where employee = 1
and (@state = -1 or @state != is_here);