Sql 选择后执行插入存储过程
我想从一个表中查询用户列表:Sql 选择后执行插入存储过程,sql,sql-server,Sql,Sql Server,我想从一个表中查询用户列表: SELECT username FROM Users WHERE birthday = todaysDate 并使用返回的结果插入到另一个表中 INSERT INTO Message (username, message) VALUES (*username from query above*, 'Happy Birthday') 我可以查询结果,也可以使用硬编码的值插入到表中,但我不确定如何在SQL中循环结果并执行操作,因为我只在VBScript中使用记录集完
SELECT username FROM Users WHERE birthday = todaysDate
并使用返回的结果插入到另一个表中
INSERT INTO Message (username, message) VALUES (*username from query above*, 'Happy Birthday')
我可以查询结果,也可以使用硬编码的值插入到表中,但我不确定如何在SQL中循环结果并执行操作,因为我只在VBScript中使用记录集完成了这一操作
我需要为此创建两个单独的存储过程吗?或者存储过程在这里不是正确的路径吗?您可以通过一次调用完成:
INSERT INTO Message (username, message)
SELECT username, 'Happy Birthday'
FROM Users
WHERE birthday = todaysDate
只需使用
insert。选择
:
INSERT INTO Message (username, message)
SELECT username, 'Happy Birthday'
FROM Users
WHERE birthday = todaysDate;
非常感谢。成功了。我没有很多SQL方面的经验。不知道一个简单的SELECT可以包含一个不属于目标表的字符串参数。我想我得用一个EXISTS什么的。我很感激。