有没有这样的sql语句?
update table1 set table1.abc = (select abc from table2)

解决方案 »

  1.   

    可以,不过在oracle 要把select abc from table2改为select abc from table2 and rownum <= 1
      

  2.   

    sql server里,也应该要加top 1 吧!
      

  3.   

    放到子查询放到from 里多好呀
      

  4.   

    to:g961681 ,你那个句子不是所有的table1.abc都为一个值了吗?我是要把select abc from table2中abc的值一个一个的赋值给table1.abc
      

  5.   

    select abc from table2只有一个结果的时候是可以的,不然会出错的
      

  6.   

    当然,我说的这个完成可能是不能实现的,但是我想知道有没有怎样的update语句可以实现多个不同的值赋值给一个字段的,以前我一直是用两个adoquery一条一条的赋值过来的.但是我想update也可以完成这个工作吧?
      

  7.   

    首先table1和table2之间必须有关联字段,如:他们的id字段相同之类的
    下面是假设他们有相同的id字段(如果是其他字段,可以对应修改on 后面的语句).updat a set a.abc=b.abc
    from table1 a
    left join  table2 b on a.id=b.id