Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.057 c
15-1271316405
12
2010-04-15 11:26
2010.08.27
PHP. Как наследовать?


2-1271927010
Rail
2010-04-22 13:03
2010.08.27
меню


2-1270922444
Evgeney
2010-04-10 22:00
2010.08.27
Процедура для открытия Child форм


2-1269953221
anastasia78
2010-03-30 16:47
2010.08.27
посик в f1book


15-1266505948
tesseract
2010-02-18 18:12
2010.08.27
torrents.ru RIP . Кто следующий ?




   Наверх