理解INSTR(pm.BUSINESS,',')> 0

时间:2017-08-09 05:48:32

标签: sql oracle

我有一个我无法理解的大型查询。我跟着this link了解INSTR的语法,但没有运气。

如果列pm.BUSINESS的值是逗号(,),那么返回'Global'吗?

以下是查询的一部分

SELECT CASE WHEN INSTR(pm.BUSINESS,',') > 0 
                  THEN 'Global' 
            ELSE pm.BUSINESS END "BUSINESS LINE",
                  pm.PUB_TYPE "PUB_TYPE",
                  pm.PUB_TITLE "PUB_TITLE",
                  a.HITS "TOTAL VIEWS",
                  a.INT "EMP_VIEWS",
                  a.EXT "CL_VIEWS",

1 个答案:

答案 0 :(得分:3)

仅关注INSTRthis article。它说:

  

INSTR函数搜索字符串以查找子字符串。该函数返回一个整数,指示字符串中此字符的位置。

正如您所假设的,如果pm.BUSINESS包含任何逗号,则查询将返回'Global'。如果不是,则返回pm.BUSINESS

的值