Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите составить запрос

miguel ferrero Ученик (124), на голосовании 4 года назад
Есть несколько таблиц
Нужно сделать вывод повторяющихся значений (Например 4 таблицы с Месяцами и Температурами)
Нужно вывести Те Дни и Месяцы в которых значения температур совпадают в двух таблицах. в трех таблицах и во всех четырех таблицах.

Разобрался только как вывести повторения внутри одной таблицы, а вот с несколькими никак не клеится..
Дополнен 4 года назад
Прикрепил фото для примера, допустим надо вывести все случаи совпадения температуры в январе (в таблицах А, Б, С, Д) , в Феврале итд.
Дополнен 4 года назад
на фото одна таблица А другие такие же но с другими числами
Голосование за лучший ответ
Евгений Высочин Просветленный (37979) 4 года назад
Нужно посмотреть эти таблицы, имена, названия полей в каждой
miguel ferreroУченик (124) 4 года назад
Дополнил фото примером
Евгений Высочин Просветленный (37979) miguel ferrero, пример совпадения по температурам в таблицах А, Б: select А. Date, А. Month, А. Temperature, Б. Date,Б. Month, Б. Temperature from А, Б where А. Temperature=Б. Temperature
myodo.ru Мудрец (12806) 4 года назад
select a.* from a
join b on a.month=b.month and a.day=b.day and a.temperature=b.temperature
join c on a.month=c.month and a.day=c.day and a.temperature=c.temperature
join d on a.month=d.month and a.day=d.day and a.temperature=d.temperature
miguel ferreroУченик (124) 4 года назад
благодарю
Андрей ПироговМудрец (14762) 4 года назад
буддист и программист, крутое сочетание
myodo.ru Мудрец (12806) буддистом я стал во многом потому, что лет 20 назад моя завкафедрой толкала мне, тогда студенту, системы искусственного интеллекта. эта теория, подкрепленная практикой, подтолкнула меня к самостоятельному выведению второй благородной истины и пошло-поехало. :)
Black Afgano Просветленный (22302) 4 года назад
Пример для PostgreSQL с помощью оконной функции

SELECT * FROM (
SELECT Temperature,
ROW_NUMBER() OVER(PARTITION BY Temperature ORDER BY Date) AS row
FROM (SELECT * FROM a UNION ALL SELECT * FROM b) ab
) table
WHERE
table.row > 1;
Похожие вопросы