Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 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.054 c
15-1215183486
Хохол
2008-07-04 18:58
2008.08.24
Пятничный флуд: Большой адронный коллайдер


2-1216634583
Int23
2008-07-21 14:03
2008.08.24
Как в существующую книгу Эксела добавить макрос и вызвать его


6-1192529716
Fixi4eeG
2007-10-16 14:15
2008.08.24
Прокси сервер socks5


15-1215011005
alex-drob
2008-07-02 19:03
2008.08.24
Apache не виден из интернета


15-1215601167
SoundB
2008-07-09 14:59
2008.08.24
SQL





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский