Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Update столбца по условию  [new]
nicreg
Member

Откуда:
Сообщений: 11
Существует таблица со следующими столбцами:
idResultIDNum
121
23
34
422
53
623


id - ключевое поле
ResultID - может принимать значения от 1 до 5
столбец Num должен увеличиваться на 1 при ResultID = 2, диапазон (1 до 100).
Значения в столбце Num должны быть уникальными.

Уже сломал всю голову, ткните в какую сторону капать.
Заранее благодарю!
28 апр 12, 16:36    [12486287]     Ответить | Цитировать Сообщить модератору
 Re: Update столбца по условию  [new]
trew
Member

Откуда: Москва
Сообщений: 2646
nicreg,
declare @tt int
set @tt =1

update tab
set num =CASE WHEN resultID =2 THEN @tt END, @tt=@tt+1
28 апр 12, 16:41    [12486298]     Ответить | Цитировать Сообщить модератору
 Re: Update столбца по условию  [new]
trew
Member

Откуда: Москва
Сообщений: 2646
trew,
Так будет правильней.
declare @tt int
set @tt =1

update tab
set num =CASE WHEN resultID =2 THEN @tt END, @tt= CASE WHEN resultID =2 THEN @tt+1 END


Ну ещё обработать ситуацию, когда равно 100, сбросить счетчик.
28 апр 12, 16:45    [12486308]     Ответить | Цитировать Сообщить модератору
 Re: Update столбца по условию  [new]
nicreg
Member

Откуда:
Сообщений: 11
Небольшое уточнение, данная возможность должна работать на стороне сервера. Также данная таблица постоянно обновляется, и в столбец Num нужно вставлять последнее значение + 1
28 апр 12, 16:54    [12486322]     Ответить | Цитировать Сообщить модератору
 Re: Update столбца по условию  [new]
Virus квартирус
Member

Откуда: Москва
Сообщений: 41
Обновляется - это значит производится вставка новых строк + Update уже существующих?
Или только добавление новых?
28 апр 12, 17:31    [12486411]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить