问题描述
让我们在我的代码中说我有用户名和一个值.现在我需要将它保存在数据库中,但我需要首先获取与该用户名对应的 ID,因为该表通过 pk/fk 链接到用户表.我该怎么做?我知道您可以执行 INSERT (blah) SELECT 等操作,但这看起来像一个直接副本,我需要插入带有 fk 列的值作为 SELECT 的结果.
Lets say in my code I have the users name, and a value. Now I need to save that in the db but I need to first get the ID corresponding to that users name because this table links with a pk/fk to the users table. How do I do it? I know you can do a INSERT (blah) SELECT etc to do it but that looks like a straight copy, i need to insert the value with the fk column as the result from a SELECT.
用户表:[用户ID(pk), 用户名]
User Table: [UserID(pk), UserName]
头像表:[用户ID(fk), AvatarURL]
Avatar Table: [UserID(fk), AvatarURL]
我需要INSERT INTO AvatarTable(UserID, AvatarURL)VALUES (*id of user where UserName = 'theirname'*, 'http://www.blah.com')
谢谢
推荐答案
您可能正在寻找这个?:
You might be looking for this?:
insert into myDestTable (userid, name, value, othercolumns)
select us.userid, us.name,'myvaluefromcode', othercolumns
from users us
where us.name = 'mynamefromcode'
这篇关于SQL INSERT 从 SELECT的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!