有两个表 aaa和bbb
aaa表:                          bbb表学号    成绩                 学号     成绩  
1     000                 1        0000
2     222                 2        1111
3     333                 3        2222
4     444                 6        3333
5     555                 9        4444
6     666                 10       5555
等等                          等等两个表的两个字段类型都一致,aaa中学号字段含有全部bbb表中的学号字段若想将bbb表的成绩中的值赋予aaa表中相同学号所对应的成绩。怎样写?效果如下
学号    成绩   
1       0000
2       11111 
3       2222
等等

解决方案 »

  1.   

    update aaa set 成绩=(select 成绩 from bbb where aaa.学号=bbb.学号)
      

  2.   

    -- TRY IT ..
    -- 1ST WAY:
    UPDATE (SELECT A.SCORE ASCORE, B.SCORE BSCORE
              FROM AAA A, BBB B
             WHERE A.STUID = B.STUID)
       SET ASCORE = BSCORE;-- 2ND WAY:
    UPDATE AAA A
       SET A.SCORE = (SELECT B.SCORE FROM BBB B WHERE A.STUID = B.STUID)
     WHERE EXISTS (SELECT 1 FROM BBB B WHERE A.STUID = B.STUID);
      

  3.   

    UPDATE AAA A
       SET A.SCORE = (SELECT B.SCORE FROM BBB B WHERE A.STUID = B.STUID)
     WHERE EXISTS (SELECT 1 FROM BBB B WHERE A.STUID = B.STUID);
      

  4.   

    同意楼上:)
    UPDATE AAA A
      SET A.SCORE = (SELECT B.SCORE FROM BBB B WHERE A.STUID = B.STUID)
    WHERE EXISTS (SELECT 1 FROM BBB B WHERE A.STUID = B.STUID);