1

Чтобы дать вам некоторое представление, я студент университета, выполняю задание по науке о данных. У меня есть набор данных в Excel, основанный на футболистах / футболистах со всего мира. В настоящее время у каждого игрока есть удостоверение личности, и каждая запись включает его удостоверение личности, имя, клуб, фотографию, возраст и т. Д .;

Проблема в том, что когда я проектирую таблицы в Access, я не могу импортировать данные из Excel и нормализовать их из-за повторяющихся данных.

Я назначил каждому игроку идентификатор, и я хочу разбить его, чтобы у меня была таблица для (Club, Player, Player_Attributes, League,), но поскольку у меня есть более 17 000 данных игроков и их клуба - мне пришлось бы назначать вручную У каждого уникального клуба идентификатор в Access, а затем удалите ВСЕ повторяющиеся клубы из моей таблицы Excel, чтобы в таблице «Клуб» отображался только один экземпляр клуба, а в таблице «Игрок», которая ссылается на таблицу клубов, находится соответствующий столбец «ClubID». , Могу ли я автоматически удалить все повторяющиеся экземпляры чего-либо в Excel И ТАКЖЕ заменить это повторение, скажем, числом?

ps извините Если я не очень хорошо сформулировал свой вопрос, если вам нужны дополнительные разъяснения, чтобы помочь мне, пожалуйста, дайте мне знать

заранее спасибо

изменить: (https://imgur.com/a/VJQmA) - ссылка на снимок экрана с моими 4 лучшими записями в Excel. Электронная таблица содержит более 17 000 записей.

1 ответ1

0

Сделайте это по шагам:

Импортируйте в таблицу «необработанных данных», которая представляет ненормализованные данные - по сути, дословные данные таблицы Excel (вам не нужно создавать эту таблицу; мастер импорта сделает это за вас).

Извлеките Лиги, Клубы в их правильные нормализованные таблицы, выполнив запрос Добавить, который выбирает отдельные данные из необработанной таблицы. Например:

INSERT INTO Leagues SELECT DISTINCT LeagueName FROM RawData .

Извлеките игроков в соответствующий нормализованный игровой стол. Для этого используйте запрос на добавление, который присоединяет таблицу RawData к нормализованным таблицам League и Club с именем в качестве поля соединения (поскольку у вас нет идентификатора в необработанных данных). В этом запросе SELECT нормализованные поля игрока (имя, возраст и т.д.), А также идентификаторы клуба и лиги. Например:

INSERT INTO Players
SELECT PlayerName, Age, LeagueID, ClubID
FROM RawData 
INNER JOIN Clubs ON RawData.ClubName = Clubs.ClubName
INNER JOIN Leagues ON RawData.LeagueName = Leagues.LeagueName

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .