Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Можно ли написать запрос, чтобы он выводил сразу несколько значений в одну ячейку? К примеру, есть 2 таблицы: книги

Дороро и Пицца Ученик (97), на голосовании 1 год назад
(код книги, универсальный номер книги) и авторы(код автора, код книги, ФИО автора). У какой то книги есть несколько авторов, т.е. в таблице авторы может повторяться код книги из таблицы книги. И как можно написать запрос, чтобы выводился универсальный номер книги и через запятую их авторы?
Дополнен 1 год назад
вот так
Голосование за лучший ответ
TEST S Ученик (99) 1 год назад
SELECT КНИГИ.универсальный номер книги, АВТОРЫ.код автора FROM КНИГИ, АВТОРЫ WHERE КНИГИ.код книги = АВТОРЫ.код книги
И у тебя таблицы несовсем соотвествуют НФ. Поскольку у тебя книга это одна таблица, авторы - другая таблица, но авторы - по факту таблица, которая является общей таблицей для самой себя и для книги. Не проще ли сделать одну таблицу КНИГА, в которой сразу и будут храниться автор с названием книги, ну либо же общую таблицу, где автор соединяется с книгой и две отдельных таблицы - автор, книга. Хотя следовать НФ впринципе не обязательно.
myodo.ru Мудрец (12806) 1 год назад
В оракуле это делается функцией окна listagg. Для своей СУБД смотри аналог.
Похожие вопросы