Модераторы: LSD
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> перекрестный запрос на SQL 
:(
    Опции темы
Tark
  Дата 26.12.2002, 09:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 17.10.2002

Репутация: нет
Всего: нет



у меня есть таблицы
Student c полями Name, Code и др.
Tests c полями Mark, Name,test_student_code и др.
они связаны Students.student_code = Tests.test_student_code

??????
можно ли в SQL запросе из Delphi (BDE, парадоксовcкие таблицы) сделать перекрестный запрос типа:
заголовки строк - имена студентов
заголовки столбцов - названия тестов
в таблице - оценки по соотв. тесту
если да, подскажите как или другой способ сделать такой перекрестный запрос

В Access я в конструкторе делаю его и получаю в SQL:
TRANSFORM Avg(Tests.test_mark) AS [Avg-test_mark]
SELECT Students.student_name
FROM Tasks INNER JOIN (Students INNER JOIN Tests ON Students.student_code = Tests.test_student_code) ON Tasks.task_code = Tests.test_task_code
GROUP BY Students.student_name
PIVOT Tasks.task_name;

когда я его переношу в дельф, он пишет Invalid use of keyword.(AS) код ошибки 12289 [$30] [$ 1]
и если меняю первую строку на TRANSFORM AVG(Tests.test_mark)
то пишет Capability not supported. код ошибки 10770 [$2A] [$12]
???????
кста, что это за значения в скобках? где можно найти описание ошибок?
поддерживается ли в SQL-92 TRANSFORM/PIVOT?
PM MAIL   Вверх
Medved
Дата 26.12.2002, 10:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 7209
Регистрация: 15.9.2002
Где: Kazakhstan, Astan a

Репутация: 3
Всего: 154



Насколько я знаю, конструкция TRANSFORM/PIVOT к сожалению не поддерживаются.... самый простой способ, сделать через временные таблицы...




--------------------
http://extreme.sport-express.ru/
...и неважно сколько падал, важно сколько ты вставал...
PM MAIL WWW ICQ Skype GTalk   Вверх
Oleg
Дата 28.12.2002, 18:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 108
Регистрация: 16.9.2002

Репутация: нет
Всего: нет



Я сам два месяца искал ответ на этот вопрос, можно написать
запрос размером на страничку(!), но в делфях намного проще использовать Desicion Cube, он для этого и предназначен.
Так что читайте теперь матчасть.

Однако если есть желание помучиться...

OSP_RUИздательство Открытые СистемыИТ-изданияWindows 2000 MagazineSQL Server MagazineМастерство разработкиДинамические перекрестные запросы.htm
--------------------
...Знающий не доказывает.   Доказывающий не знает...
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Общие вопросы по базам данных"
LSD
Zloxa

Данный форум предназначен для обсуждения вопросов о базах данных не попадающих под тематику других форумов:

  • вопросам по СУБД для которых нет отдельных подфорумов
  • вопросам которые затрагивают несколько разных СУБД (например проблема выбора)
  • инструменты для работы с СУБД
  • вопросы проектирования БД
  • теоретически вопросы о СУБД

Данный форум не предназначен для:

  • вопросов о поиске разлиных БД (если не понимаете чем БД отличается от СУБД то: а) вам не сюда; б) Google в помощь)
  • обсуждения проблем с доступом к СУБД из различных ЯП (для этого есть соответсвующие форумы по каждому ЯП)
  • обсуждения проблем с написание SQL запросов, для этого есть форум Составление SQL-запросов
  • просьб о написании курсовой, реферата и т.п., для этого есть Центр помощи или фриланс биржа
  • объявлений о найме специалистов, для этого есть раздел Объявления о найме специалистов

Если вы не соблюдаете эти правила, не удивляйтесь потом не найдя свою тему/сообщение. ;)


Полезные советы:

При написании сообщения постарайтесь дать теме максимально понятное название. В теме максимально подробно опишите проблему. Если применимо укажите: название базы данных и версии (MySQL 4.1, MS SQL Server 2000 и т.п.); используемых язык программирования; способа доступа (ADO, BDE и т.д.); сообщения об ошибках.

Для вставки кода используйте теги [code=sql] [/code].

Литературу по базам данных можно поискать здесь.

Действия модераторов можно обсудить здесь.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, LSD, Zloxa.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | СУБД, общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0874 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.