Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Агрегация строк
|
|||
|---|---|---|---|
|
#18+
Простенькая на первый взгляд задачка. Нужно сделать группировку по полю Col1, так чтобы во втором поле была конкатенация строк. Основной упор на скорость. Кстати, не понятно, почему агрегатной функции Sum запрещено иметь дело со строковыми типами. Вроде ничего не мешает. Таблица вида Col1 ___ Col2 1 _____ А 1 _____ В 2 _____ С 1 _____ Е ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2001, 06:24 |
|
||
|
Агрегация строк
|
|||
|---|---|---|---|
|
#18+
Если используется SQL2000, то можно самому написать функцию, которая бы объединяла строки. create table _myTable (col1 int, col2 varchar(10)) insert into _myTable values(1,'A') insert into _myTable values(1,'B') insert into _myTable values(2,'C') insert into _myTable values(2,'E') insert into _myTable values(2,'J') CREATE FUNCTION [dbo].[strSum] (@col1 int) RETURNS varchar(8000) AS BEGIN declare @strFinal varchar(8000) set @strFinal = '' select @strFinal = col2 + ', ' + @strFinal from _myTable where col1 = @col1 -- удаляем последнюю запятую set @strFinal = substring(@strFinal, 1, len(@strFinal)-1) return @strFinal END select col1, dbo.strSum(col1) as col2 from _MyTable group by col1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2001, 07:38 |
|
||
|
|

start [/forum/search_topic.php?author=no_registration&author_mode=last_posts&do_search=1]: |
0ms |
get settings: |
10ms |
get forum list: |
17ms |
get settings: |
7ms |
get forum list: |
15ms |
get settings: |
6ms |
get forum list: |
17ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
51ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
| others: | 1074ms |
| total: | 1261ms |

| 0 / 0 |
