table  test:
t_name   id    flag
aaa      1     1
aaa      2     1
aaa      3     0
aaa      4     0
更新flag=0 
条件:t_name='aaa',flag=0,min(id)
结果:
aaa      1     1
aaa      2     1
aaa      3     1
aaa      4     0

解决方案 »

  1.   

    update test set flag=1 where t_name='aaa' and flag = 0 and id in(select min(id) from test);
      

  2.   

    update test set flag=1
    where id in (select min(id) from test where t_name='aaa' and flag=0)
      

  3.   

    你的意思是将flag=0的id最小的那个,且name='aaa',然后修改flag=1吗?
    update test set flag=1 where  id=( select min(id) from test where name='aaa' and flag=0)