У меня (надеюсь) быстрый вопрос по SQL, который сводит меня с ума, и я нигде не смог найти ответ.
У меня есть следующий триггер SQL:
DECLARE @ABCOwnerGroup varchar(30)
DECLARE @DEFOwnerGroup varchar(30)
SET @ABCOwnerGroup='GROUP ONE'
SET @DEFOwnerGroup='GROUP TWO'
etc..
--IF OWNERGROUP IS MISSING (Location NOT NULL)
UPDATE wo
SET wo.ownergroup='@'+SUBSTRING(wo.location,1,3)+'OwnerGroup'
FROM dbo.workorder AS wo INNER JOIN inserted AS i ON wo.wonum=i.wonum
WHERE wo.status<>'COMP'
AND wo.historyflag=0
AND wo.istask=0
AND wo.ownergroup IS NULL
AND wo.location IS NOT NULL
Для вашей информации, коды местоположения похожи на 'ABC-12345', где ABC - это, по сути, сайт, а 12345 - это здание.Таким образом, SUBSTRING (wo.location, 1,3) извлекает часть ABC локации, чтобы она могла заполнить @ ABCOwnerGroup
. Проблема в том, что она вставляет значение '@ABCOwnerGroup' вместо 'GROUPONE '
Любая и вся помощь очень ценится!Надеюсь, это небольшая ошибка!