UPDATE TABLE1 SET SS=SS+1 
  WHERE TABLE1。BB=TANLE2。BB在WHERE 语句中有两个表可不可以?

解决方案 »

  1.   

    update table1 set ss=ss+1 from table1 a,table2 b where...
      

  2.   

    UPDATE [LOW_PRIORITY] [IGNORE] tbl_name
        SET col_name1=expr1, [col_name2=expr2, ...]
        [WHERE where_definition]
        [LIMIT #]
    没有FROM的
      

  3.   

    WHERE where_definition]
        [LIMIT #]怎么用?
      

  4.   

    先确定table2.bb的值,然后再用SQL语句更新
    $bb = '1';
    UPDATE table1 SET ss=ss+1 WHERE table1.bb='$bb'
      

  5.   

    UPDATE TABLE1 SET SS=SS+1 WHERE 
       exists (select * from table2 where BB=TABLE1.BB)
      

  6.   

    可以,不过好像要4.0以上版本。
    UPDATE TABLE1 a,table2 b SET a.SS=a.SS+1 
      WHERE a.BB=b.bB 把A表中有并且B表中也有的记录SS加1。UPDATE TABLE1 a,table2 b SET a.SS=b.SS+1 
      WHERE a.BB=b.bB 把A表中有并且B表中也有的记录a.SS更新为b.ss+1。
      

  7.   

    你直接这样写试试:
    UPDATE table1 SET ss = ss+1 WHERE bb in (SELECT bb FROM table2)
      

  8.   

    还是不行,系统提示说‘ GENERAL SQL ERROR,LOCK CONFICT ON WAIT TRANSLATION DEADLOCK