使用 select 插入 table

insert into a table with select

我有两个具有这些架构的表:

student(id,name,dept_name, tot_cred)
instructor(id,name,dept_name,salary)

问题是:

Insert every student whose tot_cred attribute is greater than 100 as an instructor in the same department, with a salary of ,000.

我试过这个查询,但我不知道如何为学生 $10,000 设置工资:

insert into instructor (id,name,dept_name,salary) 
  select id,name,dept_name 
    from student 
   where tot_cred > 100

只是select常数值。就我个人而言,我会在 select 中添加一个别名来记录该常量旨在成为 salary 尽管这不是必需的。不同的数据库对于如何创建该别名可能有不同的规则,并且您没有告诉我们您使用的是什么数据库,所以我在猜测语法。

insert into instructor (id,name,dept_name,salary) 
  select id,name,dept_name,10000 as salary
    from student 
   where tot_cred > 100

插入讲师 (ID, 姓名, dept_name, 薪水) SELECT ID, 姓名, dept_name, 10000 AS 工资 来自学生 其中 tot_cred >= 100;