Sql select上的Oracle案例语句

Sql select上的Oracle案例语句,sql,oracle,Sql,Oracle,尝试使用select语句的列对其使用条件。我怎么能写这样的东西 SELECT * FROM ( CASE (SELECT date_term, e_status FROM HM WHERE c_num = 2327 AND e_unique = 'something') W

尝试使用select语句的列对其使用条件。我怎么能写这样的东西

SELECT * FROM ( CASE (SELECT date_term, e_status 
                             FROM HM
                             WHERE c_num = 2327
                               AND e_unique = 'something')
                       WHEN (date_term) < TRUNC(SYSDATE)
                               OR (e_status IS NOT NULL OR e_status <> 'A')
                       THEN (SELECT NULL AS A,
                                    NULL AS B,
                                    NULL AS C,
                                    NULL AS D,
                                    NULL AS E,
                                    NULL AS F
                             FROM DUAL)
                       ELSE (SELECT p_val, p_type
                             FROM I_PARM T
                             WHERE c_num=2327
                             )
                             PIVOT 
                             (
                             MIN(p_val)
                             FOR p_type IN ('A1' AS A,
                                                    'B2' AS B,
                                                    'C3' AS C,
                                                    'D4' AS D,
                                                    'E5' AS E,
                                                    'F6' AS F)
                                                    )
                END);
更新整个查询比我原来的查询复杂一点。 我得到一个缺少右括号的错误。谢谢

SELECT case when x.a = 'something' then b.y
       else c.z end
FROM X JOIN Y on x.somecol = y.somecol
JOIN Z on x.somecol = z.somecol;
你在这个问题上的理解是对case的错误使用。用适当的列名替换联接条件,因为您似乎从不同的表中提取值

你在这个问题上的理解是对case的错误使用。用适当的列名替换联接条件,因为您似乎从不同的表中提取值

你在这个问题上的理解是对case的错误使用。用适当的列名替换联接条件,因为您似乎从不同的表中提取值

你在这个问题上的理解是对case的错误使用。用适当的列名替换联接条件,因为您似乎从不同的表中选取了值。

您也可以使用CASE x.a WHEN'something'THEN,但不能在CASE后面有值,也不能在WHEN之后有比较。您也可以使用CASE x.a WHEN'something'THEN,但不能在大小写后同时使用值和在时间后进行比较。也可以在“某物”之后使用案例x.a when,但不能在大小写后同时使用值和在时间后进行比较。也可以在“某物”之后使用案例x.a when,但不能在大小写后同时使用值和在时间后进行比较。