SQLite запрос в 2 разные таблицы и объединение в 3-й

У меня есть 3 таблица:

  • Timetable
  • Students
  • Groups

В Timetable у меня хранятся записи расписания, ниже скрин.

Структура таблицы timetable

В Client_id я храню id объекта из таблицы Students или Groups (т.е. в расписании может быть указана или группа или 1 человек)

Type - хранит одно из значений s или g - что соответствует объекту из таблицы Students или Groups.

Мне нужен запрос, чтобы получить следующую таблицу:

Пример необходимой таблицы

В идеале конечно запрос где есть - ... WHERE Day = ?

Если есть идеи другой реализации БД - приму как за ответ.

Сокращенная структура таблиц Students и Groups:

Сокращенная структура 2 таблиц

Данные в таблицах

http://www.sqlfiddle.com/#!7/04a47

Данные таблицы Students Данные таблицы Groups

Данные таблицы Timetable


Ответы (1 шт):

Автор решения: Ara_Bog

Необходимо сделать запрос в каждую таблицу и после объединить их.

SELECT tt.id, tt.time, tt.day, gr.name FROM Timetable as tt INNER JOIN Groups as gr On gr.id = tt.client_id WHERE tt.Type = 'g'
UNION 
SELECT tt.id, tt.time, tt.day, st.name || ' ' || st.surname as name FROM Timetable as tt INNER JOIN students as st On st.id = tt.client_id WHERE tt.Type = 's'
→ Ссылка