c1{
a1   char(7)// (主键)
a2      char(8)    //(主键)
a3     int    //  数字定义0,1,2,3 }
c2{
a1  char(7)// (主键)
a2  char(8) //(主键)
b3    int     // }删除c2表中而且a3=3为只兑的所有数据;
如C1表
a1               a2               a3
1000001         00000001          0
1000002         00000001          3
C2表
a1               a2               b3
1000001          00000001         2
1000001          00000002         2
1000002          00000001         2
那么C2只删除第3条记录!
 

解决方案 »

  1.   

    那么C2只删除第3条记录! 
    delete   top 1 from (select top 3 * from c2 order by a1) t order by a1 desc
      

  2.   

    上面错误
    delete       top   1   *  from   (select   top   3   *   from   c2   order   by   a1)   t   order   by   a1   desc
    至于其它的意思我没有看懂
    (删除c2表中而且a3=3为只兑的所有数据;) ?
      

  3.   

    delete   from   c2   where   a1   in   (select   distinct   a1   from   c1   where   a3=3)