在表中为MySQL中的每个查询结果插入行

时间:2019-02-26 01:50:02

标签: mysql sql insert

我的数据库中有2个表(朋友/留言簿)。

我正在使用以下查询来选择特定用户的所有朋友。

SELECT FID FROM `friends` as F WHERE UID = 1

我想做的是在“来宾”表上为从上面的查询返回的每个结果插入一行。

INSERT INTO `guestbook` (`FID`, `UID`, `message`) VALUES ('FID SHOULD BE EQUAL TO FID FROM PREVIOUS QUERY', '1', 'message goes here!')

这怎么办?

1 个答案:

答案 0 :(得分:1)

使用insert . . . select

INSERT INTO `guestbook` (`FID`, `UID`, `message`)
    SELECT FID, 1, 'message'
    FROM `friends` as F
    WHERE UID = 1;