Форум: "Базы";
Текущий архив: 2004.02.29;
Скачать: [xml.tar.bz2];
Вниз
Как пронумеровать записи??? Найти похожие ветки
← →
-=[SDA]=- (2004-02-04 07:28) [0]Приветствую, всех!... проблема моя в следущем: при выводе запроса в грид хотелось бы пронумеровать строки: 1,2,3..., но как это сделать что-то не сооброжу :( ... т.к. у меня 6.5й, то вариант есть - создавать темповую таблицу с identity полем и перегонять данные в неё, а потом в грид, но что-то не хочется использовать этот гнилой способ... так что помогите кто чем сможет,... :) заранее благодарен.
← →
DenK_vrtz (2004-02-04 08:18) [1]Тут ветка дня два назад(и возникает каждую неделю не один раз с заметным постоянством) была. Поищи.
← →
-=[SDA]=- (2004-02-04 08:29) [2]ok
← →
LordOfSilence (2004-02-04 08:51) [3]Это не "гнилой" способ.
select IDENTITY(INT,1,1) AS RowNumber, Field1, Field2
into #MyTempTable
from MySomeDataSet
Далее:
select * from #MyTempTable
Можно и по-другому, только должно выполняться условие, что твоя первичная выборка имеет условие ORDER BY по уникальному полю.
SELECT
(SELECT COUNT(*) FROM MyTable A1
WHERE A1.SortField<=A2.SortField) NumRow,
SortField,Field1, Field2
FROM MyTable A2
ORDER BY SortField
На больших объемах, сам понимаешь, это может работать не слишком лихо.
Есть и третий, несколько "загадочный" вариант. В этом варианте в твоей таблице должно физически присутствовать поле для счетчика.
DECLARE @MyCount int
UPDATE MyTable SET @MyCount=RowNumField=IsNull(@MyCount,0)+1
В синтаксисе мог немного напутать, но, думаю, идея понятна.
← →
Anatoly Podgoretsky (2004-02-04 09:28) [4]А теперь поставь фильтр
← →
Ega23 (2004-02-04 09:29) [5]Или делать это непосредственно на клиенте. Т.е. завести int поле в выборке, а потом на AfterOpen его заполнить.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.02.29;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.016 c