Соедините две таблицы через третью - одну таблицу, чтобы управлять ими всеми
Я провел свое исследование, потратил часы на учебники, но не смог найти простой для понимания способ создать то, что мне нужно.
Я новичок в Access, но очень хочу учиться. Я делаю тонны отчетов в Excel, но устал от того, как медленно это может быть, когда слишком много данных в моем листе данных. Поэтому я перешел на Access.
У меня есть 3 файла Excel с одной таблицей в каждом.
Таблица 1° 1st Excel содержит список названий кампаний и кодов отслеживания, которые прилагаются к ним.
"Campaign-TrackCode"(экспортируется из программного обеспечения)
например:
Страна Название кампании Track Code
Название кампании США 1 us-ad-1-1
Название кампании США 1 us-ad-2-1
Название кампании США 2 us-ad-1-2
Название кампании США 2 us-ad-2-2
Название кампании США 2 us-ad-3-2
так далее...
2 ° 2-я таблица Excel имеет даты; регистрационный идентификатор и от которого отслеживает код "Регистрация"(экспортируется из программного обеспечения)
например:
Дата Рег. ID Трек Код
01.01.2013 1021 us-ad-1-1
01.01.2013 1022 us-ad-1-1
01.01.2013 1023 us-ad-1-2
01.02.2013 1024 us-ad-4-2
01.02.2013 1025 us-ad-2-1
так далее...
3 ° 3-я таблица Excel - это отчет с датами, количеством кликов, названием кампании. "Отчет ggle"(экспортируется из рекламы ggle)
например:
Дата Название кампании Клики
01.01.2013 Название кампании 1 12
01.01.2013 Название кампании 1 46
01.01.2013 Название кампании 2 16
01.02.2013 Кампания № 2 35
01.02.2013 Название кампании 2 23
так далее...
И я пытаюсь объединить мою 2-ю и 3-ю таблицы вместе с 1-й, чтобы получить такую таблицу в Access:
Дата Страна Название кампании Количество Reg ID Кликов
01.01.2013 Название кампании в США 1 21 12
01.01.2013 Название кампании США 2 23 35
01.02.2013 US Campaign name 1 22 46
так далее...
Я не уверен, что делать. Я попробовал анализатор таблиц, чтобы разделить мою первую таблицу на 3 таблицы (страны, название кампании и код трека), затем подключить ее ко второй таблице через код трека, затем 1-ую таблицу, подключенную к 3-й таблице через кампании, и, наконец, использовать 1-й стол для соединения 2-го и 3-го.
не работает Поскольку я новичок, было бы здорово иметь шаг за шагом, чтобы создать этот финальный стол. Я немного потерян с первичными ключами и уникальными значениями. (У меня начинаются отношения один ко многим, поэтому я думаю, что я на правильном пути, чтобы учиться). Я бы не хотел менять свои таблицы Excel, поскольку импорт в доступе каждый день практически полностью автоматизирован. Я загружаю 3 отчета и затем добавляю уже импортированные таблицы в соответствии с уже сохраненными правилами для импорта этих файлов Excel.
Кто-нибудь знает, как это сделать?
Вот ссылка с примерами таблиц и необходимого вывода:
1 ответ
Можете ли вы попробовать выполнить этот запрос (при необходимости изменив имена таблиц / полей) и посмотреть, все ли это? Я отредактирую этот ответ позже, когда мы установим, что это то, чего вы хотели достичь.;)
SELECT
Table2.Date,
Table1.Country,
Table1.[Campaign name],
Table2.[Track Code],
Table2.[Reg ID],
Table3.Clicks
FROM
Table3 INNER JOIN
(Table2 INNER JOIN Table1 ON Table2.[Track Code] = Table1.[Track Code]) ON
Table3.[Campaign name] = Table1.[Campaign name]
ORDER BY Table2.Date, Table1.Country, Table1.[Campaign name];
- Скопируйте этот пример SQL-запроса выше,
- откройте свою базу данных Access,
- нажмите на вкладку Запросы,
- нажмите на иконку Новый,
- выберите представление дизайна,
- закройте диалог добавления таблиц,
- нажмите на кнопку SQL (вверху слева),
- вставьте этот код,
- изменить имена по мере необходимости,
- нажмите на красный значок с восклицательным знаком (Выполнить),
- вернись со своими выводами...
;)
РЕДАКТИРОВАТЬ: я добавил сортировку в конце запроса. Конечно, вы можете изменить порядок сортировки, поменяв местами поля, перечисленные в предложении ORDER BY, добавив еще несколько, пропустив некоторые, и если вы хотите, чтобы они сортировались в порядке убывания, добавьте DESC в конце имени поля, разделенного пробелом (например: ORDER BY Table2.Date DESC, Table1.Country
чтобы записи были отсортированы сначала по дате в порядке убывания, а затем по стране в порядке возрастания ASC
это порядок сортировки по умолчанию).
Я также предлагаю вам взглянуть на встроенный построитель запросов (Design View
) после того, как вы закончите редактирование синтаксиса SQL. Вы обнаружите, что довольно быстро создавать собственные запросы. Скопированное предложение SQL даст вам хороший пример того, как таблицы связаны друг с другом в WYSIWYG
построитель запросов. Конечно, вы также можете изменить все отношения, порядок сортировки, порядок отображения... просто перемещая объекты.;)