用列中的逗号分隔值替换硬编码值

时间:2014-05-27 11:58:40

标签: sql plsql

此代码段是基于IF表达式执行某些PL SQL语句的过程的一部分:

该程序包含以下IF语句:

IF(状态IN('A','B'))然后......

有一个表,其中一列包含值'A,B'

我希望IF语句从表列

中使用它,而不是对值进行硬编码

类似的东西:

IF(状态IN列名)然后......

请为此问题提供可能的解决方案,如果需要更多信息,请与我们联系。

2 个答案:

答案 0 :(得分:0)

尝试类似

的内容
IF STATUS IN (SELECT COLUMN_NAME FROM SOME_TABLE) THEN
  DO_SOMETHING_USEFUL;
END IF;

分享并享受。

答案 1 :(得分:0)

假设COLUMN_VALUE列中的逗号分隔值类似于:

IF','|| COLUMN_VALUE ||','LIKE'%,'||状态|| ',%'