如何检查存储过程中的字符串值

时间:2014-02-26 10:28:10

标签: sql oracle plsql oracle-sqldeveloper plsqldeveloper

我是一名java开发人员。我需要编写一个存储过程。在我基于传导的存储过程中,我需要检查一些字符

R_ROW IS RECORD(SELECT ACCNT_NBR, ....... QUEUE, INBOX_USER_TEAM,.. WHERE .....
LOOP
QUEUE_VAR:=R_ROW.QUEUE;
INBOX_TEAM_VAR:=R_ROW.INBOX_USER_TEAM;

IF(QUEUE_VAR='INBOX')THEN

- 我需要检查INBOX_TEAM_VAR值是否包含'%UND%'

- 就像查询一样。 SELECT.... FROM... WHERE INBOX_TEAM_VAR LIKE '%UND%'

- 请帮助我如何实现这个逻辑,因为执行者问题我不应该再次查询该表。

ELSIF(QUEUE_VAR='COMPLETE') THEN
    -- do logic
ELSIF(QUEUE_VAR='AUDIT') THEN
    -- do logic
.....
....
....
END IF;

谢谢你的预付款,为你的帮助和时间拨款

CVSR Sarma

1 个答案:

答案 0 :(得分:1)

LIKE在PL / SQL中的工作方式与SQL中的相同:

IF INBOX_TEAM_VAR LIKE '%UND%' THEN ...

附加:或者您可以改为使用INSTR功能:

IF INSTR(INBOX_TEAM_VAR, 'UND') > 0 THEN ...