使用其他表数据更新表数据

时间:2014-08-07 09:50:59

标签: sql-server-2008

我有两张表,比如

tbl_image:

Serial  |   Src            | Albumid  
________|__________________|________
   1    |   /root/wewe.jpg |   20
   2    |   /root/wewe.jpg |   21
   3    |   /root/wewe.jpg |   21
   4    |   /root/wewe.jpg |   23
   5    |   /root/wewe.jpg |   18

tbl_Album:

Albumid |  Albumname       | AlbumCover  
________|__________________|________
   20   |   AAA            |   null
   21   |   bbb            |   null
   31   |   vcc            |   null
   42   |   ddd            |   null
   18   |   eee            |   null

我想要做的是通过在第一个表中使用SerialNo来更改tbl_Album中的AlbumCover值。

喜欢

    Update tbl_Album set AlbumCover='something' where Albumid='tbl_Image.Serial'

我在复杂查询中的sql不好......有人帮我PLZ !!!

2 个答案:

答案 0 :(得分:0)

也许是这样的:

Update tbl_Album AS album
set album.AlbumCover=image.Serial
FROM tbl_Album as album
JOIN tbl_image AS image
    ON image.Albumid = album.Albumid

答案 1 :(得分:0)

您需要JOIN Albumid上的FROM两个表格。在过去,我也发现它很难"要记住的是放置SET - 子句(在UPDATE a SET a.AlbumCover = i.Serial FROM tbl_Album a INNER JOIN tbl_image i ON a.Albumid = i.Albumid 后面)的位置:

{{1}}