Sql 插入到选择中

Sql 插入到选择中,sql,Sql,我想将入学中的数据插入学生 INSERT INTO student(name,age) SELECT name, age from admission 但是现在我需要在学生中添加两个字段:用户名和密码,同时从入学中选择数据 例如: INSERT INTO student(name,age,username, password) SELECT name, age FROM admission..... 如何执行此操作?我不知道用户名和密码的值来自何处,但您可以创建一个虚拟列(具有默

我想将
入学
中的数据插入
学生

INSERT INTO student(name,age) SELECT name, age from admission
但是现在我需要在
学生
中添加两个字段:
用户名
密码
,同时从
入学
中选择数据

例如:

INSERT INTO student(name,age,username, password)
  SELECT name, age
    FROM admission.....

如何执行此操作?

我不知道
用户名
密码
的值来自何处,但您可以创建一个虚拟列(具有默认值),以匹配插入到
中的
列数。例如

INSERT INTO student(name,age,[username], [password]) 
SELECT name, age, 'userHere' as [username], 'passHere' as [password]
from admission.....
您编写的查询:

INSERT 
  INTO student(name,age) 
  SELECT name, age from admission
这是正确的。
SELECT
INSERT
的行必须匹配

但是,我不知道
用户名
密码
字段来自何处。 如果他们在同一张
入学表中,那么,@john Woo的答案是正确的。
如果表中不包含这些值,则
你可以用

update Student set username=
(select username from <table> and <condition>)
where <condition> 

如果两个新字段都可以为空,则可以执行以下操作:

INSERT INTO student(name,age,username, password)
SELECT name, age, null, null 
FROM admission

username
password
的值来自哪里?我在这里看到了一些有用的答案。。。为什么不接受其中一个呢?但是table Acmission没有字段用户名和密码。我想向table student添加更多字段。谢谢。我知道这些列可能不像您所说的那样存在,但我想问的是,
username
password
的值来自哪里?如上所示,您可以将
userHere
passwordHere
更改为类似“默认值”的内容。
INSERT INTO student(name,age,username, password)
SELECT name, age, null, null 
FROM admission