数据库表employeeinfo记录员工信息,字段:classno,classname,empno,empname,h1,h2,h3,h4classno classname empno empname h1 h2 h3 h4 h5
1 白班 5 张三 null null null null null
1 白班 6 李四 null null null null null
2 夜班 7 王五 null null null null null
2 夜班 8 赵六 null null null null nullarrange表 字段:classno,classname,empno,empname,bcdate,bctimeclassno classname empno empname bcdate bctime问题:如何把employeeinfo表4个字段classno,classname,empno,empname内容添加到arrange表4个字段中?
以下是我写的插入语句
insert into arrange
select classno,classname,empno,empname
from employeeinfo
group by classno,classname,empno,empname错误提示:
消息 213,级别 16,状态 1,第 2 行
列名或所提供值的数目与表定义不匹配。
1 白班 5 张三 null null null null null
1 白班 6 李四 null null null null null
2 夜班 7 王五 null null null null null
2 夜班 8 赵六 null null null null nullarrange表 字段:classno,classname,empno,empname,bcdate,bctimeclassno classname empno empname bcdate bctime问题:如何把employeeinfo表4个字段classno,classname,empno,empname内容添加到arrange表4个字段中?
以下是我写的插入语句
insert into arrange
select classno,classname,empno,empname
from employeeinfo
group by classno,classname,empno,empname错误提示:
消息 213,级别 16,状态 1,第 2 行
列名或所提供值的数目与表定义不匹配。
二、补充了一下SQL,你用下面的语句就可以了,如果你不需要考虑重复,后面的where可以不要;
insert into arrange (classno,classname,empno,empname)
select classno,classname,empno,empname
from employeeinfo a
where not exists(select 1 from arrange where classno=a.classno and classname=a.classname and empno=a.empno
and empname=a.empname)
insert into arrange (classno,classname,empno,empname)
select DISTINCT classno,classname,empno,empname
from employeeinfo
]指定列名插入就行了
select classno,classname,empno,empname
from employeeinfo
group by classno,classname,empno,empname
1、说明:复制表(只复制结构,源表名:a 新表名:b) (Access可用)
法一:select * into b from a where 1 <>1
法二:select top 0 * into b from a 2、说明:拷贝表(拷贝数据,源表名:a 目标表名:b) (Access可用)
insert into b(a, b, c) select d,e,f from a;
select classno,classname,empno,empname
from employeeinfo
group by classno,classname,empno,empname