| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > MySQL > выборка из 2-х таблиц.. с двумя ссылками |
| Автор: gringlin 31.3.2005, 09:44 | ||
| пытаюсь сделать выборку... но.. никак ни получается (( структура следующая: есть таблица "предметы", в которой есть поля "id_lector" и "id_seminarist", ссылающуюся на одну таблицу "преподаватели" (а точнее на ее поле "id") и поле "semestr"... т.е. есть список предметов и список преподавателий.. и нужно вывести список преподавателей конкретного семестра, в котором нужно указать - кем он являлся .. лектором или семинаристом. пытался сделать вот это:
//... но я был "послан" .. причем, возможны случаи, когда id_seminarist = NULL , т.е. по данному предмету только лекции. |
| Автор: Mal Hack 31.3.2005, 10:16 |
| Структуру таблиц покажи полностью и что с чем связать надо. |
| Автор: gringlin 31.3.2005, 10:47 | ||
| Subjects ( id, kurs, semestr, predmet, id_lector, id_seminarist, ...) Teachers (id, zvanie, surname, name, sec_name, ... )
.. в общем, есть предметы, по которым либо только лекции (в subjects прописан только лектор, а id_seminarist=NULL), либо лекции с семинарами (тогда уже два преподавателя). Преподаватели помещены в отдельную таблицу, т.к. одни и те же преподаватели могут вести разные предметы (только уже на друих семестрах) .. это я написал примерный запрос.. а надо получить записи на подобии следующей: subjects.id, subjects.semestr, subjects.kurs, subjects.predmet, subjects.id_seminarist, subjects.id_lector, teachers.zvanie, teachers.surname, teachers.name, teachers.sec_name, teachers2.zvanie, teachers2.surname, teachers2.name, teachers2.sec_name //... т.е. если id_seminarist != NULL надо вывести и лектора и семинариста. конечная циль - просто получить список преподавателей n-го семестра с указанием кто лектор, а кто семинарист. и, желательно конечно, их отсортировать по фамилии. ///// я понимаю, конечно, что вышеописанный запрос это "сама тупость".... но, вопрос в том, как бы так сделать................. |
| Автор: Kesh 31.3.2005, 18:22 | ||
Попробуй так... |