Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Работа с GROUOP_CONCAT (Hamyachok) 25/12/2012 - 13:48:42
      Re: Работа с GROUP_CONCAT (Akina) 25/12/2012 - 18:07:28
      Re: Работа с GROUP_CONCAT (Hamyachok) 26/12/2012 - 16:13:38

> Original message text:
> From: Hamyachok - 25/12/2012 - 13:48:42
> Subject:Работа с GROUOP_CONCAT
> -----------------
> Здравствуйте мастера. Задача такая. Есть четыре таблицы:
> lessons
> id, Name
>
> teachers
> id, Name
>
> class
> id, Name
>
> lesson_teacher_class
> id, id_lesson, id_teacher, id_class
>
> С помощью этих таблиц определяется связка, какой учитель ведет тот или иной предмет в каком классе. Например
> Мария Антоновна - русский язык - 5А
>
> Задача простая. Есть журнал предметов, таблица типа
> Предмет, Учитель(урок)
> Хочу чтоб в таблицу выводился список уроков и список учителей с классами в которых он ведет. Решил, её, но получается ненаглядно.
> Вот код
> select l.*, GROUP_CONCAT(concat(t.Name, '(', c.Name, ')') ORDER BY c.Name ASC SEPARATOR ', ' ) AS teachers
> from lessons as l left join lesson_teacher_class as ltc on l.id = ltc.id_lesson and ltc.deleted = 0 left join classes as c on ltc.id_class = c.id and c.deleted = 0 left join teachers as t on ltc.id_teacher = t.id and t.deleted = 0
> where l.deleted = 0 group by l.id order by l.Name asc
>
> Выбор идет от предмета.
> В результате получаем такую таблицу:
> Название | Учитель(урок)
> Алгебра | Мария Антоновна(5А), Иван Степанович(5Б), Мария Антоновна(5Б), Мария Антоновна(5В)
> .......
> Я хочу, чтоб таблица была вида
> Название | Учитель(урок)
> Алгебра | Мария Антоновна(5А, 5Б, 5В), Иван Степанович(5Б)
>
> Мне кажется, так будет значительно наглядней и удобней. Пробовал разные комбинации group_concat, но так ничего не получилось. Как быть? есть вариант решить эту задачу без хранимой процедуры и через один запрос от php?
>


From: Hamyachok - 26/12/2012 - 16:13:38
Subject:Работа с GROUP_CONCAT
-----------------
Спасибо за подсказку, думаю так должно сработать)


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
41940



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |