我有一个mysql的脚本如下:
设置@waktu = NULL; 选择用户名, IF (@username = 用户名, IFNULL(TIMEDIFF(waktu,@waktu),0), @waktu:=waktu + NULL + LEAST(0,@username := username)) selisih_waktu, @waktu:=`waktu` 作为时间 FROM mdl_temporer_log2 WHERE rolename = 'Student' 由 waktu 订购
之后,我运行该脚本,它将显示如下:
用户名 | selisih_waktu | 时间 -----------|---------------|-------------- 水| 空 | 05:55:07 水| 空 | 05:55:09 梅吉 | 空 | 05:55:37 梅吉 | 空 | 05:55:40 梅吉 | 空 | 05:55:45
但是,当我第二次运行它时,该脚本将显示如下:
用户名 | selisih_waktu | 时间 -----------|---------------|-------------- 水| 0 | 05:55:07 水| 00:00:02 | 05:55:09 梅吉 | 空 | 05:55:37 梅吉 | 00:00:03 | 05:55:40 梅吉 | 00:00:03 | 05:55:45
我想从该脚本中获取如下输出:
用户名 | selisih_waktu | 时间 -----------|---------------|-------------- 水| 空 | 05:55:07 水| 00:00:02 | 05:55:09 梅吉 | 空 | 05:55:37 梅吉 | 00:00:03 | 05:55:40 梅吉 | 00:00:03 | 05:55:45
所以,我很困惑,那个脚本是对还是错?如果该脚本是错误的,那么正确的脚本如何?