Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > MS Access > Вторичные ключи (одинаковые) из одной таблицы


Автор: MaruSya 24.12.2006, 13:53
Задача, вобщем, такая.
Есть таблица команды и матчи.
В таблице матчи содержаться поля КодКоманды1 и КодКоманды2. Все это данные из таблицы Команды (поле КодКоманды).
Как можно установить целостность данных в таком случае?
И сделать запрос, например, информация о матчах с указанием названия команд.


Название 1-й команды у меня отображается, но вот второй...
Никак не получается сделать.
Очень надеюсь на Вашу помощь.

Автор: Akina 24.12.2006, 22:42
Цитата(MaruSya @  24.12.2006,  14:53 Найти цитируемый пост)
Как можно установить целостность данных в таком случае?

Проверить, что в полях КодКомандыХ присутствуют только коды, наличествующие в таблице команд, нет записей с пустым кодом и с КодКоманды1=КодКоманды2

Цитата(MaruSya @  24.12.2006,  14:53 Найти цитируемый пост)
сделать запрос, например, информация о матчах с указанием названия команд.

Код

Select Матчи.*, К1.Команда, К2.Команда
From (
    Матчи
  Inner Join 
    Команды As К1 
      ON Матчи.КодКоманды1=К1.КодКоманды
) Inner Join 
    Команды As К2 
      ON Матчи.КодКоманды2=К2.КодКоманды


Автор: dionisiu 26.12.2006, 10:58
Слишком сжата информация. Предполагаю, что табла Матчи, кроме полей с кодами команд, должна содержать, например, дату и результат(ы) каждого матча. Все матчи должны происходить между командами, присутствующими в табле Команды, которая должна содержать как минимум два поля КодКоманды и ИмяКоманды (возможно, также Группа, ЧислоИгроков, ФИО_Капитана и т.д.). 
MaruSya, подтвердите (или опровергните) моё предположение. Это облегчит понимание задачи для простых смертных (судя по всему, Akina уже разобрался  smile  )

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)