MySQL更新数据库命令不工作
我现在有一个MySQL命令,用于使用另一个表中的值更新MySQL表中的一行MySQL更新数据库命令不工作,mysql,Mysql,我现在有一个MySQL命令,用于使用另一个表中的值更新MySQL表中的一行 update info set info.artist = playlist.artist from playlist where info.songname = playlist.songname 有一个语法错误。但我能看到里面的任何东西 谢谢:)试试这个: UPDATE info INNER JOIN playlist ON info.songname = playlist.songname
update info set info.artist = playlist.artist
from playlist
where info.songname = playlist.songname
有一个语法错误。但我能看到里面的任何东西
谢谢:)试试这个:
UPDATE info
INNER JOIN playlist ON info.songname = playlist.songname
SET info.artist = playlist.artist
第二个样本:
UPDATE info
INNER JOIN (
SELECT songname, artist
FROM playlist
WHERE playlist.time_requested IS NOT NULL
ORDER BY playlist.time_requested
LIMIT 1
) PL ON info.songname = PL.songname
SET info.artist = PL.artist
请参见
UPDATE
语法,这不是更新表的方式。提示:您只能将FROM
与选择一起使用。这是可行的,但如何将其与“WHERE time_requested by time_requested asc LIMIT 1”结合使用?Thanks表中有time\u requested列?为什么是PL而不是playlist?playlist是整个播放列表表,没有WHERE和LIMIT条件,PL是播放列表的临时别名,带有WHERE和LIMIT条件。换句话说,PL是整个(SELECT…)子查询的别名