如表aid   title  content
1     a      aa
2     b      bb
5     a      cc
6     8      dd
8     a      cc
9     a      ss
10    r      dd
15    a      ff
17    d      dd
18    a      dd我要修改条件   title=a  正序排列  2条  content为aa 如 update a set content='aa' where title='a' ORDER BY id ASC limit 0 2
就是不对
求教高手帮忙
最后结果是
id   title  content
1     a      aa
2     b      bb
5     a      aa
6     8      dd
8     a      cc
9     a      ss
10    r      dd
15    a      ff
17    d      dd
18    a      dd 

解决方案 »

  1.   

    mysql> select * from a;
    +------+-------+---------+
    | id   | title | content |
    +------+-------+---------+
    |    1 | a     | aa      |
    |    2 | b     | bb      |
    |    5 | a     | cc      |
    |    6 | 8     | dd      |
    |    8 | a     | cc      |
    |    9 | a     | ss      |
    |   10 | r     | dd      |
    |   15 | a     | ff      |
    |   17 | d     | dd      |
    |   18 | a     | dd      |
    +------+-------+---------+
    10 rows in set (0.00 sec)mysql> update a ,(select id from a where title='a' ORDER BY id ASC limit 1,1) b
        -> set content='aa'
        -> where a.id = b.id;
    Query OK, 1 row affected (0.30 sec)
    Rows matched: 1  Changed: 1  Warnings: 0mysql> select * from a;
    +------+-------+---------+
    | id   | title | content |
    +------+-------+---------+
    |    1 | a     | aa      |
    |    2 | b     | bb      |
    |    5 | a     | aa      |
    |    6 | 8     | dd      |
    |    8 | a     | cc      |
    |    9 | a     | ss      |
    |   10 | r     | dd      |
    |   15 | a     | ff      |
    |   17 | d     | dd      |
    |   18 | a     | dd      |
    +------+-------+---------+
    10 rows in set (0.00 sec)mysql>