Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > MS SQL Server > Автозаполнение в зависимости от полей


Автор: Кофейник 14.5.2006, 23:55
Наткнулся на такую ситацию:
Есть таблица 1 в ней надо что - бы из одного столбца (num) добавлялось значение во второй столбец за исключением одного случая назовем его 123. 
То есть была таблица:
1 12 11  
2 22 34
3 34 56 
4 55 78
5 66 79
6 77 69

Надо сделать так  
1 12 1211   (В третьем столбце добавляется в начало значениее 2 столбца в данной строке т.е было
2 22 2234          12 стало 1211, было 22-2234) + один из вариантов не должен меняться и может
3 34 3456          встречаться несколько раз например 77 так и оставляем 77)
4 55 5578
5 66 6679
6 77 77

Заранее сппасибо! 

Автор: boevik 15.5.2006, 07:17
Само напрашиваемый вариант, trigger. 

Автор: Кофейник 18.5.2006, 20:43
Цитата(boevik @ 15.5.2006,  07:17)
Само напрашиваемый вариант, trigger.

А как сие заделать! Если не лень кинь ссылочку или объясни. smile  

Автор: boevik 19.5.2006, 07:58
Примерно так:
Код

CREATE TRIGGER myTrigger
ON table1
AFTER INSERT, UPDATE
AS
UPDATE table1
SET col2 = str(col1) + str(col2)
FROM table1 INNER JOIN inserted ON table1.id = inserted.id
WHERE col1 <> 77
UPDATE table1
SET col2 = col1
FROM table1 INNER JOIN inserted ON table1.id = inserted.id
WHERE col1 = 77

 

Автор: Кофейник1 24.5.2006, 16:20
Балгодарю, духовно smile  

Автор: kofeinik 25.5.2006, 10:48
Попробовал пишет что col1/col2 и прочее столбика, имеют двухзначное значение. (ПРичем как на моей подопытной табличке, так и на новой созданной по образу и подобию описааной). Помогите инвалиду умственного труда. 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)