加入条件列 SQL

乔萨姆

我正在尝试对 SQL 中创建的列 (y_prcs_new) 进行左连接,但出现下一个错误:“列 'y_prcs_new' 无法解析”

这是查询:

SELECT 
sh.i_rqst,
sh.y_rqst,
sh.c_close_reason,
CASE WHEN sh.y_prcs IS NULL THEN 3
     WHEN sh.y_prcs = 1 AND  sh.c_close_reason = 5 THEN 3
     WHEN (sh.y_prcs IS NOT NULL OR sh.y_prcs != 1) AND sh.c_close_reason != 5  THEN sh.y_prcs
END AS y_prcs_new,
fr.t_close_reason

FROM st_hist sh

LEFT JOIN
        (SELECT DISTINCT fr.c_close_reason, fr.t_close_reason, fr.y_prcs
        FROM sRsn fr) AS fr
        ON sh.c_close_reason = fr.c_close_reason 
        AND y_prcs_new = fr.y_prcs

你知道怎么解决吗?

热心

您的查询不正确,因为join语句首先执行,然后select在查询末尾执行语句,因此连接查询找不到y_prcs_new

select   
  i_rqst,
  y_rqst,
  c_close_reason,
  y_prcs_new,  
  t_close_reason
from
(
  SELECT 
    i_rqst,
    y_rqst,
    c_close_reason,
    CASE WHEN y_prcs IS NULL THEN 3
         WHEN y_prcs = 1 AND  c_close_reason = 5 THEN 3
         WHEN (y_prcs IS NOT NULL OR y_prcs != 1) AND c_close_reason != 5  THEN y_prcs
    END AS y_prcs_new

  FROM st_hist
) sh
LEFT JOIN
( SELECT 
    DISTINCT c_close_reason, 
    t_close_reason, 
    y_prcs
  FROM sRsn
) fr
ON sh.c_close_reason = fr.c_close_reason 
AND sh.y_prcs_new = fr.y_prcs

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章