У меня есть следующая проблема SQL, учитывая таблицу с определенным столбцом, например tableX:
col1
123
321
456
321
982
666
100
...
количество строк в этой таблице может варьироваться (даже быть 0).Что мне нужно, это разделить строки на отдельный текст.
Например, я мог бы поместить все значения в одну строку, используя это
SET @LIST= (SELECT ',''' + col1+'''' FROM Table FOR XML PATH(''))
('123','321','456','321',...) -- < can be too long
, но проблема в том, что @LISTстановится слишком длинным, поэтому я хочу разделить его на основе количества записей в нескольких (под) списках.Например, фиксированный размер (например, максимум 3 элемента) всегда будет смотреть на три элемента, пока ничего не останется.Я думал об использовании какой-то петли
// some Kind of Loop
('123,321,456')
// end some Kind of loop
and in the next Loop
('321,982,66')
and finally (if less than 3 are remaining) only
('100')
как мне этого добиться?
edit: база данных представляет собой базу данных MSSQL.При необходимости я могу отсортировать записи, но они также содержат символы (не только числовые).на самом деле порядок не имеет значения.