Как открепить перекрестную таблицу, такую как таблица?
После импорта данных из документа 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
Мой вопрос в том, как я могу извлечь данные из первой таблицы и сохранить их во второй? Возможно ли использовать только запросы доступа или я должен иметь дело с vba?
Я нашел множество примеров, когда напротив (поворачивая вторую таблицу, чтобы получить первую), но мне не удалось найти способ решить это дело.
1 ответ:
Конечно
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
*повторите последнюю строку для каждого дополнительного столбца в первой таблице