【发布时间】:2014-01-30 01:31:50
【问题描述】:
这个 Oracle 查询有什么问题。我正在尝试嵌套 case 表达式,但找不到查询失败的原因。
SELECT USER_ID,
ADVISER_FORENAME,
ADVISER_SURNAME,
AGENT_CODE,
'ABC@WIPRO.COM' AS EMAIL_ADDRESS,
SUBMISSION_DATE,
STATUS_CHANGED_DATE,
CASE
WHEN (
CASE
WHEN TO_CHAR(TRUNC(status_changed_date), 'DY') IN ('fri','sat','sun')
THEN ((TRUNC(STATUS_CHANGED_DATE) - (TRUNC(SUBMISSION_DATE)))>4)
ELSE ((TRUNC(STATUS_CHANGED_DATE) - (TRUNC(SUBMISSION_DATE)))>6)
END)
THEN 'B'
ELSE 'A'
END AS CATEGORY_CODE,
PLAN_REF,
PRODUCT_CODE,
CASE
WHEN ((TRUNC(STATUS_CHANGED_DATE) - TRUNC(SUBMISSION_DATE))>4)
THEN 'IPP'
ELSE 'ICP'
END AS TOUCHPOINT_NAME
FROM PIPELINE_PLAN
WHERE STATUS =26
AND PRODUCT_TYPE =1
AND (TRUNC(STATUS_CHANGED_DATE) - TRUNC(SUBMISSION_DATE))<=4;
当我尝试运行时,它给出以下错误:
ORA-00907: 缺少右括号
00907. 00000 - “缺少右括号”
*原因:
*行动:
行错误:53 列:84
我检查了是否缺少括号,但没有找到。
请帮忙。
【问题讨论】: