从 Excel 文档导入数据后,我最终得到了一个如下所示的表格(与数据透视表非常相似):
EMPLOYEEID | SKILL1 | SKILL2 | SKILL 3
---------------------------------------
emp1 | 1 | | 3
emp2 | 2 | 3 |
emp3 | | | 1
emp4 | | 2 | 3
在我的数据库中,我有另一个表,用于存储每种技能的每个知识级别 每位员工:
EMPLOYEEID | SKILLID | LEVEL_OF_KNOWLEDGE
------------------------------------------
emp1 | SKILL1 | 1
emp1 | SKILL3 | 3
emp2 | SKILL1 | 2
emp2 | SKILL2 | 3
emp3 | SKILL3 | 1
emp4 | SKILL2 | 2
emp4 | SKILL3 | 3
我的问题是,如何从第一个表中检索数据并将其存储在第二个表中?是否可以仅使用 Access 查询或让我处理 vba?
我发现了很多相反的例子(旋转第二个表以获得第一个表),但我还没有找到解决这种情况的方法。
最佳答案
当然
SELECT EmployeeID, "SKILL1" AS SkillID, SKILL1 AS Level_OF_Knowledge WHERE SKILL1 IS NOT NULL
UNION ALL SELECT EmployeeID, "SKILL2" AS SkillID, SKILL2 AS Level_OF_Knowledge WHERE SKILL2 IS NOT NULL
UNION ALL SELECT EmployeeID, "SKILL3" AS SkillID, SKILL3 AS Level_OF_Knowledge WHERE SKILL3 IS NOT NULL
*对第一个表中的每个附加列重复最后一行
关于excel - 如何取消透视交叉表之类的表格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18536639/