当Select子句包含Case时使用where子句

时间:2017-11-01 20:01:31

标签: sql oracle case

我正在研究Oracle SQL,我试图通过使用where子句来过滤我的一些结果。另外,在同一个查询中我有select子句中的case。出于某种原因,我在运行查询时遇到错误,我不明白是什么问题。查询附件:

SELECT 
 CASE 
  WHEN TBL_120.PP_ID!=TBL_200.PP_ID  THEN TBL_120.pp_id
 END 
  FROM
 (select pp_id, code, amount from price_plan_mapping where  pcversion_id = 
 '10200') TBL_120 LEFT JOIN 
 (select pp_id, code, amount from price_plan_mapping where  pcversion_id = 
 '20000') TBL_200 ON  TBL_120.PP_ID=TBL_200.PP_ID
 WHERE TBL_120.PP_ID!=TBL_200.PP_ID IS NOT NULL 

我想填写所有来自案例编码的结果为null。

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

WHERE TBL_120.PP_ID != TBL_200.PP_ID IS NOT NULL 

可能应该是

WHERE TBL_120.PP_ID != TBL_200.PP_ID
  AND TBL_200.PP_ID IS NOT NULL