我有一个包含 DATETIME 列的历史记录表。不能在 DATEDIFF 函数中分配变量吗?以下声明:
SET @LASTDATETIME='2000-01-01 00:00:00';
SELECT DATETIME, @LASTDATETIME, TIMEDIFF(DATETIME, @LASTDATETIME:=DATETIME) AS CALC, @LASTDATETIME FROM HISTORY
导致这个结果:
|DATETIME |@LASTDATETIME | CALC | @LASTDATETIME
-------------------------------------------------------------------
2013-01-28 12:11:41 |2000-01-01 00:00:00 |00:00:00 |[BLOB - 19 B]
2013-01-28 12:11:44 |2013-01-28 12:11:41 |00:00:00 |[BLOB - 19 B]
我不明白为什么看起来分配有点像 DATETIME 被结转到下一条记录,但是 CALC 字段失败了,并且在分配之后 @LASTDATETIME 的值是一个 BLOB?为什么这不像我预期的那样工作?
谢谢您的帮助。