|
MySQL.RU - Webboard
Вернуться
Вопрос для профи: Поиск следующих/предыдущих (ndz) 21/06/2016 - 17:25:12
Re: Вопрос для профи: Поиск следующих/предыдущих (Akina) 22/06/2016 - 17:09:55
From: ndz - 21/06/2016 - 17:25:12
Subject:Вопрос для профи: Поиск следующих/предыдущих
-----------------
Добрый день, иногда пользуюсь MySQL при работе с сайтом и поэтому кое-как знаю его. Однако недавно возник вопрос и явно сейчас моих знаний недостаточно. Свою задачу я свёл к такой абстрактной задаче, итак к сути:
Есть 2 таблицы:
Первая с персонами:
--------------------
id Имя пол
1 Коля м
2 Вася м
3 Гриша м
4 Игорь м
5 Даша ж
6 Катя ж
7 Ира ж
8 Соня ж
--------------------
И вторая, где эти персоны пересекаются, что-то типа графика дежурств с результатом в виде кол-ва часов или очков:
-------------------------------------------
строка персона1 персона2 кол-во очков
1 Катя Вася 10
2 Коля Игорь 5
3 Вася Даша 3
4 Катя Ира 2
5 Гриша Коля 3
6 Ира Вася 3
7 Катя Коля 3
8 Даша Маша 3
9 Вася Даша 3
------------------------------------------
Требуется (без создания доп.таблиц): - выдать результат, когда в графике дежурств выводятся персоны с полом Ж и Ж и кол-во часов 2, то есть результирующая таблица будет такой:
-----------------------------------------------------
строка персона1 персона2 кол-во очков
4 Катя Ира 2
-----------------------------------------------------
Это был простой вариант, меня интересует как организовать выдачу результатов для следующих/предыдущих вхождений: Например, усложняем предыдущий пример, вывести когда оба пола Ж, а так же вывести для них следующие пары с результатом часов, то есть результирующий набор выглядеть как-то так будет:
----------------------------------------------------
строка персона1 персона2 кол-во очков
4 Катя Ира 2
6 Ира Вася 3
7 Катя Коля 9
----------------------------------------------------
* эти примеры так же можно дополнить выводом предыдущих пар для каждой пары, когда обе Ж и Ж (строка 4).
*так же интересуют варианты, например когда встречаюся М+М, когда следующими, для каждого из них будут Ж с результатом 10 часов и
*или когда для первого М из М+М будет следующей Ж с кол-вом очков 9, а для второго М следующей парой будет М и кол-во очков у них 5
* или ещё интересует - для каждой пары у которой результат 5 очков, вывести предыдущую пару и следующую пары П.С. Очень надеюсь на Вашу помощь, так как она может помочь развитию спорта в стране.
[Это сообщение - спам!]
Последние сообщения из форума
Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL,
версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
43592
|
|