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

Вниз

Объединение записей   Найти похожие ветки 

 
ddd329   (2009-04-25 07:51) [0]

Как с помощью SQL можно объеденить записи(не поля) в одну? Допустим нам надо выбрать из таблицы хобби клиента, у данного клиента может быть несколько занятий и запрос вернет несколько записей. Можно ли сделать так чтобы запрос возвращал одну запись в которой через запитую будут перечисленны его хобби???


 
Гарик   (2009-04-25 09:20) [1]

Назовите СУБД. Наверное, во всех СУБД такая операция легко проделывается с помощью хранимых процедур. В Oracle можно использовать хранимые функции. Или надо применять только "чистый" SQL?


 
Виталий Панасенко(дом)   (2009-04-25 10:29) [2]

select f1,(select hobby from )||","||(select hobby from) from если движек(сервер) потянет такой синтаксис


 
PEAKTOP ©   (2009-04-25 11:45) [3]

СУБД уточни ?
В Firebird можно так:

SELECT LIST(H.NAME, ", ")
FROM   CLIENT_HOBBIES H
WHERE (H.CLIENT_ID = 12345)


 
DDD329   (2009-04-26 16:29) [4]

СУБД Access, был бы Oracle на PL/SQL состряпал бы быстренько.


 
clickmaker ©   (2009-04-27 11:55) [5]

а в access есть курсоры?
и если в таблице есть уникальный id, то можно в цикле - while


 
MsGuns ©   (2009-04-28 11:06) [6]

В Акцесе прямым запросом - никак. Надо писать модуль.


 
clickmaker ©   (2009-04-29 14:21) [7]

set @MinHobby = ""
set @Hobbues = ""
while exists(select * from hobbies where Hobby > @MinHobby)
 set @MinHobby = (select min(Hobby) from hobbies where Hobby > @MinHobby)
 if @Hobbies <> "" @Hobbies = @Hobbies + ", "
 set @Hobbies = @Hobbies + @MinHobby
end



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

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

Наверх




Память: 0.48 MB
Время: 0.053 c
2-1269516298
Delphist2
2010-03-25 14:24
2010.08.27
как узнать адрес процедуры?


15-1265614586
Andy BitOff
2010-02-08 10:36
2010.08.27
Крик души в чате.


2-1275629001
Sergey2
2010-06-04 09:23
2010.08.27
Service


15-1270305381
Игорь Шевченко
2010-04-03 18:36
2010.08.27
Microsoft заботится о нас. Иногда даже чересчур


15-1274167672
ixen
2010-05-18 11:27
2010.08.27
Ошибка при подключении к RDP через UserGate 5