![]() |
|
Модераторы: skyboy |
![]()
|
|
| del3d |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 128 Регистрация: 13.11.2007 Репутация: нет Всего: нет |
Здравствуйте!
Пример выдуманный.. интересует механизм выполнения запроса.. Например, имеется таблица с дисциплинами (математика, история...):
и таблица с оценками..
Необходимо выбрать данные в таком виде: id student Математика История Биология.. 1 Иванов 5 4 3 2 Петров 4 3 4 3 Сидоров 3 2 4 ... т.е. как бы данные из таблицы `discipline` сделать полями результата.. Меня интересует, возможно ли выполнить такой запрос и если да, то каким образом.. Спасибо.. |
||||
|
|||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 106 Всего: 454 |
MySQL не поддерживает Pivot Tables.
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| del3d |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 128 Регистрация: 13.11.2007 Репутация: нет Всего: нет |
Я так понял, что не получится??
Как же быть? Делать для каждого пользователя отдельный запрос? ..и выводить построчно.. |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 106 Всего: 454 |
Это зависит от того, статический ли список предметов в первой таблице.
Если нет - то только форматирование результата на клиенте. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| del3d |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 128 Регистрация: 13.11.2007 Репутация: нет Всего: нет |
Статический (6 штук..)
|
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 106 Всего: 454 |
Ну значит для каждого столбца предмета целевой таблицы стряпай свой подзапрос и линкуй их к основной таблице.
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Gluttton |
|
|||
![]() Начинающий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1170 Регистрация: 28.8.2008 Где: Феодосия Репутация: 2 Всего: 54 |
del3d, вот тут пример для Firebird, но автор предпологает, что это может быть полезным и для пользоваетелей других СУБД.
Если это вообще то. -------------------- Слава Україні! |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 41 Всего: 260 |
||||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 106 Всего: 454 |
В принципе в рамках MySQL можно написать хранимку, которая проделает всё то же на стороне сервера...
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| del3d |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 128 Регистрация: 13.11.2007 Репутация: нет Всего: нет |
Тоже склоняюсь к написанию ХП.. Спасибо за помощь..
|
|||
|
||||
| Zloxa |
|
|||
|
Чо? ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3473 Регистрация: 12.9.2008 Репутация: 33 Всего: 161 |
Это сообщение отредактировал(а) Zloxa - 19.8.2010, 14:17 -------------------- Достоверно известно, что 89% людей доверяют статистике взятой с потолка |
|||
|
||||
| del3d |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 128 Регистрация: 13.11.2007 Репутация: нет Всего: нет |
Отлично.. мысль ясна.. Спасибо за поддержку..
|
|||
|
||||
| gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: 3 Всего: 17 |
может быть еще вот так как-то:
`a` - это условно |
|||
|
||||
| Zloxa |
|
|||
|
Чо? ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3473 Регистрация: 12.9.2008 Репутация: 33 Всего: 161 |
gcc, ты вообще о чем?
убило, при том что запрос вседа вернут лишь одну запись. -------------------- Достоверно известно, что 89% людей доверяют статистике взятой с потолка |
|||
|
||||
| gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: 3 Всего: 17 |
Zloxa, нет, не одну..
вот в этом вопросе http://forum.vingrad.ru/forum/topic-293695.html этот запрос решил задачу... тут, тоже, 2 таблицы, может быть получится так как там... похоже очень... Это сообщение отредактировал(а) gcc - 14.10.2010, 14:56 |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MySQL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |