Topic: Выборка из нескольких таблиц по нескольким критериям
Помогите начинающему, уже всю голову сломал.
Есть 2 таблицы, независимые друг от друга, но связанные по одному параметру с третьей таблицей.
т.е. X.id_Z = Z.id и Y.id_Z = Z.id/
Нужно свести данные из этих 2 таблиц в одну и выбрать строки с максимальными id из каждой таблицы (одновременно) для каждого элемента из таблицы Z. Проще всего было бы объеденить эти таблицы через RIGHT JOIN от таблицы Z, но... в SQLite он не работает.
Наиболее близки результат даёт вот это:
SELECT Z.Z,
.....,
.....,
MAX(Y.id),
MAX(X.id)
FROM X, Y
LEFT OUTER JOIN Z ON X.id_Z = Z.id
WHERE X.id_Z= Y.id_Z
GROUP BY Z.id
Для полей X.id и Y.id всё срабатывает как надо, но вот для остальных полей данные подтаскиваются из совершенно левых строк, а не из соответствующих условию.
Если перенести выборку максимальных значений в WHERE, то правильно срабатывает только для первого значения из таблицы Z, для остальных берётся первая попавшаяся строка.
Как уже ни крутил, даже через временные таблицы пробовал - нужного результата не добился.
Может у кого идеи есть.