Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.20;
Скачать: CL | DM;

Вниз

Как запросом сделать конкатенацию всех строковых значений   Найти похожие ветки 

 
big_bugzy   (2003-10-30 15:57) [0]

в определенном поле таблицы??
т.е. попросту сделать стринговый SUM ??


 
Reindeer Moss Eater ©   (2003-10-30 16:01) [1]

TransactSQL + курсор + операции сложения (||)


 
big_bugzy   (2003-10-30 16:04) [2]

Reindeer Moss Eater ©
Можно по подробнее??


 
paul_k ©   (2003-10-30 16:23) [3]

подробнее - по циклу сложить все строки в одну.
только, по моему мнению, бред это и попытка налететь на ограничение типа. Тем более, насколько я помню, не всегда при присвоении строковой переменной строки длиннее разрешенного генерится исключение. ТО есть просуммировать вроде просуммирует а в результате будет, ну скажем первые 255 символов (или первые 4000 - как переменную объявить)
и какой смысл самому себе грабли подкладывать?


 
Nikolay M. ©   (2003-10-30 16:27) [4]

Можно еще тригеры повесить на insert/update/delete и перестраивать руками это "определенное поле таблицы".
Хотя смысл сих манипуляций для меня лично - загадка...


 
big_bugzy   (2003-10-30 16:54) [5]

paul_k ©
как в SQL сделать цикл и сложить записи?
Nikolay M. ©
нет необходимости хранить это, нужно один раз сложить и все...


 
Nikolay M. ©   (2003-10-30 16:59) [6]


> как в SQL сделать цикл и сложить записи?

Reindeer Moss Eater © (30.10.03 16:01) [1]
все написал - через создание курсора.


> нет необходимости хранить это, нужно один раз сложить и
> все...

Делай тогда вообще на клиенте. Конечно, если объемы позволяют, чтобы их по сети тягали. Но правильнее, конечно, через ХП и курсор.


 
paul_k ©   (2003-10-30 17:03) [7]

объявить курсор
Query Analiser - F1-Cursor
и дальше по циклу выбрать все записи из курсора
но, подчеркиваю тип строка не безконечен и исключения могут не сгенерится
проверь сначала результат след. селекта
declare @a varchar(5)
select @a="12345"+"12345"
select @a

и десять раз подумай надо ли оно, и нельзя ли другим способом сделать


 
big_bugzy   (2003-10-30 17:05) [8]

Nikolay M. © ,Reindeer Moss Eater ©
понял, значит буду с курсорами разбираться...


 
Sandman25 ©   (2003-10-30 17:07) [9]

Еще интересно, в каком порядке конкатенировать...


 
SergSuper   (2003-10-30 19:14) [10]

если порядок не важен, то можно и без курсора
http://www.sql.ru/faq/faq_topic.aspx?fid=130


 
Fay   (2003-10-30 21:13) [11]

declare @s varchar(do_hrena)

select @s = ""

select @s = @s+Field from Table

print "Wow!"



Страницы: 1 вся ветка

Текущий архив: 2003.11.20;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.03 c
1-65876
cashe
2003-11-08 01:25
2003.11.20
Чем пожать текстовый файл?


1-65902
MozG
2003-11-08 14:23
2003.11.20
Как программно узнать количество папок/файлов в папке и подпапках


3-65756
Yu
2003-10-31 14:40
2003.11.20
DBLookupComboBox


4-66156
Атучин Михаил
2003-09-24 08:14
2003.11.20
Как скрыть свою программу от Win2000


1-65859
Ricks
2003-11-09 11:59
2003.11.20
Office11 или ExpressBars Suite v5