Office中国论坛/Access中国论坛

标题: 中秋发钱专帖:如何将主表的列值,变为子表的行值 [打印本页]

作者: 343024425    时间: 2011-9-8 11:10
标题: 中秋发钱专帖:如何将主表的列值,变为子表的行值
中秋发钱专帖:如何将主表的列值,变为子表的行值
如何将主表的列值,变为子表的行值


主表:员工ID 原部门 原职务  现部门  现职务  拟转部门 拟任职务
子表:员工ID  员工履历ID  工作部门  职务

把原部门、 现部门 、拟转部门 中的值,变为 子表中 工作部门的值。
把原职务、现职务、拟任职务   中的值,变为 子表中  职务的值

主表数据:
主表:员工ID 原部门 原职务  现部门  现职务  拟转部门 拟任职务
         1     生产部  工人   营业部   营业员  销售部   副经理

计划转变后子表数据:
子表:员工ID  员工履历ID  工作部门  职务
         1           1          生产部    工人
              1          2           营业部   营业员
              1          3           销售部   副经理

不知道我讲得明白了没有?因为设计时,关系没弄清,造成现在的麻烦。  


作者: jinzhanxi    时间: 2011-9-8 11:17
明白你的需求了,我也有这样的疑问,一起学习,坐等答案
作者: tzh16000    时间: 2011-9-8 11:17
是要一次性转,还是需要根据主表数据长期查询?
作者: ACCESSBeginners    时间: 2011-9-8 11:34
tzh16000 发表于 2011-9-8 11:17
是要一次性转,还是需要根据主表数据长期查询?

一次性转换。请问有这例子吗?
作者: tzh16000    时间: 2011-9-8 11:41
ACCESSBeginners 发表于 2011-9-8 11:34
一次性转换。请问有这例子吗?

哈哈,一次性的话,把数据转成EXCEL表格重新整理下再复制到新表里去是最方便的
另外新表应该是两个表而不是一个表
不然将来又要出问题
作者: tzh16000    时间: 2011-9-8 11:53
insert into 子表 (员工ID,履历ID,工作部门,职务) select 员工ID,1,原部门,原职务 from 主表
insert into 子表 (员工ID,履历ID,工作部门,职务) select 员工ID,2,现部门,现职务 from 主表
insert into 子表 (员工ID,履历ID,工作部门,职务) select 员工ID,3,拟转部门,拟任职务 from 主表
这样INSERT三次就行了吧
如果是两个表,就去掉追加履历ID字段
作者: yanghua1900363    时间: 2011-9-8 12:00
[attach]46654[/attach] 这样就可以实现
作者: ACCESSBeginners    时间: 2011-9-27 08:31
yanghua1900363 发表于 2011-9-8 12:00
这样就可以实现

版本不兼容,能帮我发个 2003版本的吗?谢谢了。
作者: todaynew    时间: 2011-9-27 13:48
交叉查询即可
作者: yanghua1900363    时间: 2011-9-28 17:42
[attach]46786[/attach]这是access2000的格式




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3