Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.05.12;
Скачать: CL | DM;

Вниз

Можно ли сделать такой запрос   Найти похожие ветки 

 
NOV   (2003-04-22 16:31) [0]

Проветствую All!
Сразу к делу
Есть две таблицы связь многие ко многим через третью таблицу

Table AUTOR
ID идентификатор
Name имя
... другие поля неважно


Table Books
ID идентификатор
Name имя
... другие поля неважно

Table AutorBooks
ID_B идентификатор книги
ID_A идентификатор автора

ВНИМАНИЕ ВОПРОС!
Можно ли построить SQL запрос который бы выдавал
в одной записи
Наименование книги и всех авторов этой книги
типа группировка а поле авторов суммировать

Заранее спасибо!


 
Дмитрий Баранов ©   (2003-04-22 16:35) [1]

Написать функцию. MS SQL или Oracle это позволяют.


 
Жук ©   (2003-04-22 16:44) [2]

Что-то не очень понятно. Сколько полей в записи должно быть ?


 
NOV   (2003-04-22 16:44) [3]

Это понятно, это любая база позволяет,
но в этом случае придеться представлять через дополнительную таблицу, вопрос не как сделать, я сделал на делфи через вычисляемое поле
ВОПРОС АКАДЕМИЧЕСКИЙ МОЖНО ЛИ С ПОМОЩЬЮ SQL


 
NOV   (2003-04-22 16:46) [4]

TO Жук
два поля в одном название книги
в другом фамилии всех авторов этой книги


 
Johnmen ©   (2003-04-22 16:51) [5]

>ВОПРОС АКАДЕМИЧЕСКИЙ МОЖНО ЛИ С ПОМОЩЬЮ SQL

Одним натуральным запросом - нет.



 
Жук ©   (2003-04-22 16:52) [6]

select b.name,a.name,
(select count(ab1.id) from AutorBooks ab1 where ab1.id_b=b.id) as awtory
from autor a,books b, autorbooks ab
where b.id=ad.id_b and ab.id_a=a.id
order by b.name

Тут три. :-(


 
Дмитрий Баранов ©   (2003-04-22 16:52) [7]

нельзя, так как для строк нет аггрегирующих функций.


 
Жук ©   (2003-04-22 16:56) [8]

Интересно, зачем это надо ?


 
NOV   (2003-04-22 17:07) [9]

TO ЖУК
Немного не то этот запрос выдает количество авторов
а мне нужны их фамилии сцепленные вместе допустим через запятую
КАК зачем, чтобы в одной записи все авторы были

TO Johnmem
А ненатуральным, вложеным, любым но с помощью SQL


 
Соловьев ©   (2003-04-22 17:13) [10]

СУБД?
ХП


 
Johnmen ©   (2003-04-22 17:17) [11]

>NOV (22.04.03 17:07)

Под "натуральным" имел в виду не степень сложности и вложенности, а тот, который обращается к таблицам и только к ним. (не к ХП или ВЬЮ).


 
Дмитрий Баранов ©   (2003-04-22 17:24) [12]

NOV (22.04.03 17:07)
Один шут курсор для подзапроса надо объявлять-открывать-фетчить и склеивать в результирующую строку.


 
NOV   (2003-04-22 17:35) [13]

TO Johnmen
Хорошая идея
Сейчас в Accessе попробовал так
сначала перекресный запрос где: строки -> книги,
столбцы-> авторы,
значения-> фамилии
а потом по нему второй запрос склеивая всех авторов
почти то, что надо, но если будут добавляться авторы
то как обновлять второй запрос там строго прописано
что складыват :(
Еще мысли есть?



Страницы: 1 вся ветка

Текущий архив: 2003.05.12;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.015 c
6-34528
nester
2003-03-12 23:25
2003.05.12
Как сделать так, чтобы при скачивании с инета сразу запускалась


14-34610
Ренат
2003-04-24 15:50
2003.05.12
Кнопка power на клавиатуре


1-34401
ed18
2003-04-30 11:28
2003.05.12
MDI и модальные формы


7-34634
ed
2003-03-10 23:02
2003.05.12
Флоппи


14-34558
Карлсон
2003-04-23 16:09
2003.05.12
Бойкот.