mysql不支持子查询,只能用两条查询来实现
select max(id) from account;
若id为123456
delete * from account where id=123456;

解决方案 »

  1.   

    delete from account order by id DESC limit 1;这样子可以 , 以下是 4.0.17的验证mysql> select * from table1;
    +------------+------+------+
    | mydate     | b    | c    |
    +------------+------+------+
    | 2004-05-01 | aaa4 |    2 |
    | 2004-06-05 | a1   |   10 |
    | 2004-06-21 | bb   |    8 |
    | 2004-06-07 | bb2  |    1 |
    +------------+------+------+
    4 rows in set (0.00 sec)mysql> delete from table1 order by c desc limit 1;
    Query OK, 1 row affected (0.00 sec)mysql> select * from table1;
    +------------+------+------+
    | mydate     | b    | c    |
    +------------+------+------+
    | 2004-05-01 | aaa4 |    2 |
    | 2004-06-21 | bb   |    8 |
    | 2004-06-07 | bb2  |    1 |
    +------------+------+------+
    3 rows in set (0.00 sec)
      

  2.   

    或者创建一个临时表,不过这样就比较麻烦了。
    seakingx的方法很好~~ 
    :)