使用SELECT从嵌套的INSERT语句中提取数据?

时间:2016-02-04 03:46:27

标签: mysql sql database select insert

是否可以让INSERT语句将受影响的列返回到SELECT语句中? 例如,我有声明:

INSERT INTO work_day (WorkDateId, TimeframeId) VALUES (@selecteddateid,@timeframeid);

但是work_day有一个自动递增的work_dayId,它会在插入此行数据时创建。我想把这个work_dayId放在另一个语句中,但是我想知道它是否能够将这个INSERT嵌套在SELECT中,该SELECT将选择受影响/创建的行。

所以我可以像这样陈述这句话:

INSERT INTO appointment 
(customerid, WorkDayId, UserId, Priority, Assign)
VALUES 
(@otherdata
(SELECT WorkDayId FROM work_day WHERE WorkDateId = (INSERT INTO work_day (WorkDateId, TimeframeId) VALUES (@selecteddateid,@timeframeid))));

1 个答案:

答案 0 :(得分:0)

AS @Gordon说:

  

不,你不能这样做。你想要last_insert_id()

将此处发布作为更好的可见性的答案。