插入新创建的列
Posted
技术标签:
【中文标题】插入新创建的列【英文标题】:Insert into newly created column 【发布时间】:2020-09-17 22:04:52 【问题描述】:我有一个学生表,其中 2 col 作为 Rollno,Marks 有 12 条记录 我在学生表中添加了另一列作为名称。如何使用 SQL Server 中另一个表中的 12 条记录填充名称?
我试过了:
SELECT * FROM [SampleDB].[dbo].[Student_SQL]
insert into Student_SQL(name)
select name
FROM [School].[dbo].[StudentMaster]
update [Student_SQL]
set name = 'David'
where RollNo = 4`
【问题讨论】:
您正在运行哪个数据库:sqlserver、mysql、sqlite..?哪一列可以用来关联这两个表? 【参考方案1】:我想你想要 upate/join 语法。假设这两个表通过列rollno
关联:
update ss
set ss.name = sm.name
from student_sql ss
inner join student_master sm on sm.rollno = ss.rollno
这种方法的好处是它过滤行并且只更新那些在主表中匹配的行。
【讨论】:
【参考方案2】:为了做到这一点,您需要为两个表提供共同的列
update [Student_SQL] s
set name = (select name from other_table o where o.roll_no = s.roll_no)
【讨论】:
以上是关于插入新创建的列的主要内容,如果未能解决你的问题,请参考以下文章
根据 R 中的列名创建一个新数据框,其中包含来自另一个数据框的列
从 json 创建的 Pandas 数据框有未命名的列 - 由于未命名的列问题,无法插入 MySQL