Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
17 / 17 / 4
Регистрация: 06.07.2012
Сообщений: 510

Тройной запрос

22.03.2014, 00:03. Показов 1377. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
Возникла следующая проблема: имеются таблицы Участники, команды, таблица команд.
Участники:
|Код|ФИО|Телефон|Личная информация|

Команды
|Код|Номер команды|Жеребьевочный номер|

Таблица команд
|Код|Общий номер первого участника|Общий номер n участника|Название команды

Код из таблицы команд является номером команды.
Общий номер первого участника является кодом из участников

Знаю, что можно было сделать тоже самое из двух таблиц, но я уже не могу переделывать базу.

Так вот: нужно сделать запрос, который выдает следующую таблицу (предположим что команда - 2 человека):
|Фамилия 1|Имя 1|Фамилия 2|Имя 2|Жеребьевочный номер|

Бился целый день, но у меня не получилось...
Не могли бы вы помочь в составлении запроса?

Заранее благодарен.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.03.2014, 00:03
Ответы с готовыми решениями:

Тройной вложенный запрос/запрос из трех таблиц
Добрый день, помогите, пожалуйста, правильно составить sql запрос. Есть три таблицы: 1. Список лекций, ключевое поле код лекции, также...

Тройной вложенный запрос
Подскажите как объединить вот такие три запроса: Select Phone from AllBase where Phone= '22222222'"; INSERT INTO AllBase...

тройной SELECT запрос
Задача такая. есть некая схема, из которой нужно вытащить любые данные, при этом использую Тройной SELECT запрос.( типа SELECT (SELECT...

12
 Аватар для Игорь[Igor]
726 / 478 / 130
Регистрация: 24.12.2008
Сообщений: 3,924
22.03.2014, 00:23
Объеденить две строки в одну не получиться
0
17 / 17 / 4
Регистрация: 06.07.2012
Сообщений: 510
22.03.2014, 00:28  [ТС]
В каком смысле?
0
 Аватар для Игорь[Igor]
726 / 478 / 130
Регистрация: 24.12.2008
Сообщений: 3,924
22.03.2014, 00:33
Получить можно такое
|Фамилия 1|Имя 1|Жеребьевочный номер|
|Фамилия 2|Имя 2|Жеребьевочный номер|
0
Модератор
 Аватар для FIL
3492 / 2614 / 742
Регистрация: 19.09.2012
Сообщений: 7,977
22.03.2014, 00:41
proggamer12, что за база?
0
17 / 17 / 4
Регистрация: 06.07.2012
Сообщений: 510
22.03.2014, 01:06  [ТС]
*.accdb. Использую ADOQuery. Мне просто нужно в отчете (Fast Report) указать имя фамилию обоих участников, и их общий жеребьевочный номер.

Т. е. должен быть такой отчет:

Фамилия 1|Имя 1|
Жеребьевочный номер
Фамилия 2|Имя 2|
0
 Аватар для Игорь[Igor]
726 / 478 / 130
Регистрация: 24.12.2008
Сообщений: 3,924
22.03.2014, 01:20
главный, детальный

Добавлено через 1 минуту
Получиться:

Жеребьевочный номер
---------------------
Фамилия 1|Имя 1|
Фамилия 2|Имя 2|
0
Модератор
 Аватар для FIL
3492 / 2614 / 742
Регистрация: 19.09.2012
Сообщений: 7,977
22.03.2014, 10:59
Цитата Сообщение от proggamer12 Посмотреть сообщение
Так вот: нужно сделать запрос, который выдает следующую таблицу (предположим что команда - 2 человека):
|Фамилия 1|Имя 1|Фамилия 2|Имя 2|Жеребьевочный номер|
Цитата Сообщение от proggamer12 Посмотреть сообщение
Т. е. должен быть такой отчет:
Фамилия 1|Имя 1|
Жеребьевочный номер
Фамилия 2|Имя 2|
Так что в итоге надо? Отчет или таблица?
0
17 / 17 / 4
Регистрация: 06.07.2012
Сообщений: 510
22.03.2014, 11:44  [ТС]
Нужен отчет, но я хотел его получить через приведенный выше запрос.
А есть другой способ?

Добавлено через 5 минут
т. е. в ADOQuery указываю запрос, который дает мне написанную выше таблицу, а потом вставляю все эти поля в отчет в Fast Report. Но если есть способ лучше, то я был бы очень признателен, если Вы бы мне его сказали.
0
 Аватар для pHOMM
480 / 253 / 51
Регистрация: 30.06.2010
Сообщений: 651
22.03.2014, 12:25
Лучший ответ Сообщение было отмечено proggamer12 как решение

Решение

SQL
1
2
3
4
5
SELECT Uch1.FIO, Uch2.FIO, Teams.ZHNumber 
FROM Teams_Table tt 
JOIN Teams ON tt.ID = Teams.ID
JOIN Uchastniki Uch1 ON tt.ID_UCH1 = Uch1.ID
JOIN Uchastniki Uch2 ON tt.ID_UCH2 = Uch2.ID
Как-то так. При команде больше 2 - накопипастить последних джойнов нужное кол-во раз.
На будущее - лучше писать наименование полей на английском и в одном стиле их обзывать для понятности на русском (для сообщения) а то код/номер , несостыковки между ФИО и фамилия+имя
Вы путаете читающего таким образом.
1
17 / 17 / 4
Регистрация: 06.07.2012
Сообщений: 510
22.03.2014, 22:26  [ТС]
Спасибо большое!

Добавлено через 9 часов 33 минуты
Переделал под свои названия полей Ваш запрос, но Access жалуется на ошибку синтаксиса в предложении FROM, не могли бы Вы помочь?
Код:
SQL
1
2
3
4
5
SELECT Uch1.Фамилия, Uch2.Фамилия, [Смешанные пары].[Номер первого выступления]
FROM [Таблица пар] tt
JOIN [Смешанные пары] ON tt.Код = [Смешанные пары].[Номер пары]
JOIN [Общая таблица участников] Uch1 ON tt.[Общий номер 1-ого участника(цы)] = Uch1.Код
JOIN [Общая таблица участников] Uch2 ON tt.[Общий номер 2-ого участника(цы)] = Uch2.Код
0
пофигист широкого профиля
4770 / 3205 / 862
Регистрация: 15.07.2013
Сообщений: 18,613
23.03.2014, 02:32
Цитата Сообщение от proggamer12 Посмотреть сообщение
Переделал под свои названия полей Ваш запрос
Фанат скобок?
0
17 / 17 / 4
Регистрация: 06.07.2012
Сообщений: 510
24.03.2014, 01:05  [ТС]
Поля, состоящие из более чем одного слова нуждаются в квадратных скобках...
И все же мы отошли от темы - что нужно исправить?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.03.2014, 01:05
Помогаю со студенческими работами здесь

Как составить тройной запрос
Добрый день!!! помогите составить запрос, уже блин четвертый день мучаюсь!!! Есть три таблицы, в которых храниться информация о моделях...

Как можно оптимизировать тройной вложенный цикл и запрос к БД
на входе 3 массива 1-й $arResult, содержит массив из ID команд, которые в свою очередь содержат массив ID игроков выглядит вот...

Тройной указатель
int **a, **b, ***c; *c=a; *c=b; хочу сделать так *c={a, b}; //ругается, почему?

Тройной интеграл
Помогите решить тройной интеграл: \iiint\limits {(8y + 12z)dxdydz};V = \{ y = x;y = 0;x = 1;z = 3{x^2} + 2{y^2};z = 0;\}

Тройной интеграл
Добрый вечер. Есть один интеграл: \int \int \int x^2dxdydz , G: x^2+y^2=9;z=0;z=1; Дошел до этого момента: 2\int_{0}^{1}dz...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru