Гость
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / select SumStr(... / 5 сообщений из 5, страница 1 из 1
18.02.2003, 13:10
    #32107874
666
666
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
select SumStr(...
Может есть что-то вроде агрегированной функции?

Дана таблица emp:

DepID Name
1 Вася
1 Коля
2 Миша
2 Аня
2 Вова

и чтобы запрос типа - select DepID, SumStr(Name || ' ') from emp group by DepID
выдал следующее:

1 Вася Коля
2 Миша Аня Вова
...
Рейтинг: 0 / 0
18.02.2003, 18:55
    #32108293
Gold
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
select SumStr(...
Только в ХП ...
...
Рейтинг: 0 / 0
18.02.2003, 18:57
    #32108295
Осирис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
select SumStr(...
А как ? Мне тоже это интересно.
...
Рейтинг: 0 / 0
19.02.2003, 10:11
    #32108502
Осирис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
select SumStr(...
Ну может все-таки кто-нибудь поделится со мной этим знанием ? :)
...
Рейтинг: 0 / 0
19.02.2003, 12:07
    #32108629
av
av
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
select SumStr(...
Привет!

Можно попробовать использовать процедуру с двумя селектами: первый отбирает уникальные DepId, второй для этих DepId отбирает Name и слепливает их в одну строку:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
create table test(
id integer,
name char( 10 ));

insert into test values ( 1 ,'Vasja');
insert into test values ( 1 ,'Kolja');
insert into test values ( 2 ,'Mi6a');
insert into test values ( 2 ,'Anja');
insert into test values ( 2 ,'Vova');

set term !!;
create procedure testp
returns (id integer, name varchar( 32765 ))
as
 declare variable tmp char( 10 );
begin
for select distinct id 
 from test 
 into id
 do begin 
 name='';
 for select name 
  from test 
  where id=:id 
  into tmp
  do name=name||:tmp;
 suspend;
end
end
!!
set term;!!
 
select * from testp;
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / select SumStr(... / 5 сообщений из 5, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]