2016-10-24 3 views
0

Работа с триггером Insert. Как я могу проверить поле для определенного символа (в данном случае, тире между двумя кодами авиакомпаний) при создании оператора If в этом триггере?DB2 - проверка наличия определенного символа в операторе IF

IF schema.table.field (**contains**?) '-' THEN 
SET @origin = (SELECT SUBSTR(field,1,3) FROM table WHERE parameters 
SET @delivery = (SELECT SUBSTR(field,5,3) 
ELSE 
END IF; 
+0

Проверьте предикат 'LIKE', например. http://stackoverflow.com/questions/17834894/how-does-the-like-predicate-work-in-sql – mustaccio

ответ

0

Это то, что я реализовал. Похоже, что он работает по назначению.

IF LOCATE('-',(SELECT table.field FROM table 
WHERE table.field2=triggeringtable.field3)) > 0 THEN 
SET @dashcheck = 1; 
END IF; 

Я отрегулирую это, если что-нибудь сломается. Если кто-нибудь увидит какие-то недостатки в этом, что я, возможно, пропустил, пожалуйста, не стесняйтесь говорить об этом.

Смежные вопросы