Главная страница
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.057 c
2-1271304861
not_134
2010-04-15 08:14
2010.08.27
фильтрация по двум полям


11-1216300266
Ruzzz
2008-07-17 17:11
2010.08.27
Есть что-то подобное TCriticalSection в KOL


2-1266306224
Den
2010-02-16 10:43
2010.08.27
Как прочитать логи?


2-1274181203
Andrey93
2010-05-18 15:13
2010.08.27
Проблема. Рисование на Canvas е


2-1273505020
HRustBB
2010-05-10 19:23
2010.08.27
Как получить указатель на инкапсулирующий объект