Форум: "Базы";
Текущий архив: 2008.08.24;
Скачать: [xml.tar.bz2];
ВнизПеревернуть таблицу Найти похожие ветки
← →
pirks © (2008-02-29 17:22) [0]Всем привет.
Вот такая у меня проблема:
Есть таблица в MySQL
name | mark | date
-------------|-------------
Александр | 2 | 10
Александр | 4 | 11
Александр | 1 | 12
Александр | 3 | 13
Дима | 3 | 11
Дима | 3 | 12
Дима | 4 | 13
из неё нужно зделать
name | 10|11|12|13
-------------|----------------
Александр | 2 | 4 | 1 | 3 |
Дима | |3 | 3 | 4 |
Это возможно используя один лиш SQL ?
Если кто знает приведите примерный вид запроса.
Заранее всем спасибо.
← →
Anatoly Podgoretsky © (2008-02-29 23:42) [1]> pirks (29.02.2008 17:22:00) [0]
Это не переворот, а транспонирование в куб.Eвместимости с которым и оставлена эта функция. если не заниматься батонокидательством. Вариант с Control гарантирует результат, вариант с Components не всегда.
← →
pirks © (2008-02-29 23:51) [2]>>куб.Eвместимости
Не понял я что ты имеешь в веду
← →
pirks © (2008-02-29 23:54) [3]Да и просто транспонирование не даст того что нужно.
а как понимать в ... куб ?
← →
Виталий Панасенко(дом) (2008-03-01 10:17) [4]Для просмотра(и редактирования) - NXDBGRID...
← →
pirks © (2008-03-01 11:07) [5]не нен тдёт.
Я же нарисовал таблицу которая должна получиться.
Мне не совсем поворот нужен.
Нужно получи1ть из 1 таблици вторую.
← →
pirks © (2008-03-01 11:13) [6]Да и ещё желательно чтоб это делала субд
через SQL. Не хочу грузить клиентские приложения.
← →
Виталий Панасенко(дом) (2008-03-01 12:12) [7]
> pirks © (01.03.08 11:13) [6]
>
> Да и ещё желательно чтоб это делала субд
> через SQL. Не хочу грузить клиентские приложения.
И еще желательно, что бы она (СУБД) это умела делать...Так, кажись, только MS Access умеет делать(TRANSFORM)...а для чего все эти телодвижения ?
← →
pirks © (2008-03-01 12:27) [8]Надо.
У меня в бд хранятся результаты тестирования студентов.
Вот хочу представить это всё в привычной нормальной форме как в журнале.
неужели мускл не держит запросы где мона динамически изменять содержимого раздела SELECT ?
Может у кого есть инфа по этому поводу ?
← →
b z (2008-03-01 12:31) [9]искать по pivot в mysql
ну вот как-то так:
http://en.wikibooks.org/wiki/MySQL/Pivot_table
← →
makz © (2008-03-01 12:39) [10]Наверое это и будет батонокидательство:
select name,
...
(select mark from TAB where DATE=10),
(select mark from TAB where DATE=11),
(select mark from TAB where DATE=12),
...
from TAB
← →
makz © (2008-03-01 12:41) [11]т.е. конечно сложнее с вложенным будет
(select mark from TAB where DATE=12 and name = ..)
← →
pirks © (2008-03-01 12:50) [12]Принцип я понял, как нужно писать.
Я думаю смогу написать теперь то что требовалоь.
Всем огромное спасибо что обратили внимание на мою проблему)))))))
Всем удачи и пока )))
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2008.08.24;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.055 c