powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Подредактировать запрос,чтобы выводил в 2 колонки,а не в 1
4 сообщений из 4, страница 1 из 1
Подредактировать запрос,чтобы выводил в 2 колонки,а не в 1
    #39463399
Kat1619
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть запрос, который должен выводить расписание занятий, как вывести по 1 дню недели знаю, дальше он пихает верные ответы в 1 столбец,а надо в 2 и более.
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
select   Direction.Name as Понедельник from
(((Schedule left join Direction on Schedule.id_Direction=Direction.id_direction)
left join Day_of_the_week on Schedule.id_day_of_the_week=Day_of_the_week.id_day_of_the_week)
 left join Time on Time.id_time=Schedule.id_time)
where Day_of_the_week.id_day_of_the_week=1 
union all
select Direction.Name as gr  from
(((Schedule left join Direction on Schedule.id_Direction=Direction.id_direction)
left join Day_of_the_week on Schedule.id_day_of_the_week=Day_of_the_week.id_day_of_the_week)
 left join Time on Time.id_time=Schedule.id_time)
where Day_of_the_week.id_day_of_the_week=2




выводит верно, но в 1, а нужно как в расписании по дням недели. Подтолкните в нужное русло, пожалуйста
...
Рейтинг: 0 / 0
Подредактировать запрос,чтобы выводил в 2 колонки,а не в 1
    #39463491
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Делаете поиск в разделе по слову "pivot" и читаете всё найденное. Коротко - GROUP BY + CASE
...
Рейтинг: 0 / 0
Подредактировать запрос,чтобы выводил в 2 колонки,а не в 1
    #39464187
Kat1619
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina,

помогите с группировкой, пожалуйста
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
SELECT Time.Name,
CASE 
WHEN Schedule.id_day_of_the_week =1 THEN Direction.Name else 0 end as '1',
CASE 
WHEN Schedule.id_day_of_the_week =2 THEN Direction.Name else 0 end as '2',
case 
WHEN Schedule.id_day_of_the_week =3 THEN Direction.Name else 0 end as '3',
CASE 
WHEN Schedule.id_day_of_the_week =4 THEN Direction.Name else 0 end as '4',
case
WHEN Schedule.id_day_of_the_week =5 THEN Direction.Name else 0 end as '5',
CASE 
WHEN Schedule.id_day_of_the_week =6 THEN Direction.Name else 0 end as '6'

FROM (((Schedule left join Direction on Schedule.id_Direction=Direction.id_direction)
left join Day_of_the_week on Schedule.id_day_of_the_week=Day_of_the_week.id_day_of_the_week)
 left join Time on Time.id_time=Schedule.id_time)
group by Time.Name, Schedule.id_schedule
...
Рейтинг: 0 / 0
Подредактировать запрос,чтобы выводил в 2 колонки,а не в 1
    #39464221
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В CASE уберите секцию ELSE, и оберните их в MAX().
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Подредактировать запрос,чтобы выводил в 2 колонки,а не в 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]