使用 Mysql 这个语句有效:
SELECT *, ABS(UNIX_TIMESTAMP(time) -
UNIX_TIMESTAMP('2013-11-14 14:35:21') ) as diff from Alert
order by diff
limit 3
但是,如果我按如下方式添加 where 子句,则会出现“'where 子句'中的未知列 'diff'”错误
SELECT *, ABS(UNIX_TIMESTAMP(time) -
UNIX_TIMESTAMP('2013-11-14 14:35:21') ) as diff from Alert
where diff < 2
order by diff
limit 3
好的,我将语句更改为使用Having 子句,如下所示:
SELECT *, ABS(UNIX_TIMESTAMP(time) -
UNIX_TIMESTAMP('2013-11-14 14:35:21') ) as diff from Alert
order by diff
having diff<2
它仍然给我您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 4 行的“具有 diff<2”附近使用正确的语法。