Модераторы: skyboy
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> выборка из 2-х таблиц.. с двумя ссылками 
:(
    Опции темы
gringlin
Дата 31.3.2005, 09:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 8.3.2005

Репутация: нет
Всего: нет



пытаюсь сделать выборку... но.. никак ни получается ((

структура следующая:

есть таблица "предметы", в которой есть поля "id_lector" и "id_seminarist", ссылающуюся на одну таблицу "преподаватели" (а точнее на ее поле "id") и поле "semestr"...

т.е. есть список предметов и список преподавателий..

и нужно вывести список преподавателей конкретного семестра, в котором нужно указать - кем он являлся .. лектором или семинаристом.

пытался сделать вот это:

Код

WHERE subjects.id_lector=teachers.id
and subjects.id_seminarist=teachers.id


//... но я был "послан" smile

.. причем, возможны случаи, когда id_seminarist = NULL , т.е. по данному предмету только лекции.

Это сообщение отредактировал(а) gringlin - 31.3.2005, 09:50
PM MAIL   Вверх
Mal Hack
Дата 31.3.2005, 10:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 8
Всего: 261



Структуру таблиц покажи полностью и что с чем связать надо.
PM ICQ   Вверх
gringlin
Дата 31.3.2005, 10:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 8.3.2005

Репутация: нет
Всего: нет



Subjects ( id, kurs, semestr, predmet, id_lector, id_seminarist, ...)
Teachers (id, zvanie, surname, name, sec_name, ... )

Код

SELECT subjects.id, subjects.semestr, subjects.kurs, subjects.predmet, subjects.id_seminarist, subjects.id_lector,
teachers.zvanie, teachers.surname, teachers.name, teachers.sec_name
FROM subjects, teachers
WHERE 
subjects.id_lector=teachers.id
and subjects.id_seminarist=teachers.id
and subjects.semestr=$sem


.. в общем, есть предметы, по которым либо только лекции (в 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-го семестра с указанием кто лектор, а кто семинарист.
и, желательно конечно, их отсортировать по фамилии.

///// я понимаю, конечно, что вышеописанный запрос это "сама тупость".... smile
но, вопрос в том, как бы так сделать................. smile
PM MAIL   Вверх
Kesh
Дата 31.3.2005, 18:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Эксперт
Сообщений: 2488
Регистрация: 31.7.2002
Где: Германия, Saarbrü cken

Репутация: 15
Всего: 54



Код
SELECT subjects.id, subjects.semestr, subjects.kurs, subjects.predmet, subjects.id_seminarist, subjects.id_lector,
teachers.zvanie, teachers.surname, teachers.name, teachers.sec_name
FROM 
subjects, teachers
WHERE 
((subjects.id_lector=teachers.id)
or 
(subjects.id_seminarist=teachers.id))
and 
(subjects.semestr=$sem)

Попробуй так...

Это сообщение отредактировал(а) Kesh - 31.3.2005, 18:23


--------------------
user posted image
PM MAIL WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MySQL | Следующая тема »


 




[ Время генерации скрипта: 0.1081 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.