*SQL* | как пересечь строчки агрегатной функцией
Здравствуйте! подскажите, пожалуйста, как сделать пересечение строчек, то есть найти строчку, на которую они все начинаются. Например:
Код:
declare @table1 table (name varchar(100));
insert into @table1 values 'архимед'
insert into @table1 values 'архангел'
insert into @table1 values 'архиеважно'
insert into @table1 values 'архиватор'
-- чтобы получилось типа:
select agg_intersect_str(name) from @table; -- выдало бы 'арх'
Либо как можно переформулировать задачу: сгруппировать список имён по первому слову и как можно более понятно назвать группу
|
а если будет так:
Код:
declare @table1 table (name varchar(100));
insert into @table1 values 'архимед'
insert into @table1 values 'архангел'
insert into @table1 values 'архиеважно'
insert into @table1 values 'архиватор'
insert into @table1 values 'бетатестер'
insert into @table1 values 'бетаверсия'
insert into @table1 values 'бетаважно'
Код:
select agg_intersect_str(name) from @table
- что должно быть на выходе?
|
Цитата:
Цитата Delirium
что должно быть на выходе? »
|
должна быть пустая строка
через like не получится, потому что не известно заранее, что в этих словах общее
|
Время: 15:09.
© OSzone.net 2001-