이 하위 쿼리는 큰 쿼리의 일부입니다.
...
CASE WHEN tx.call_id IS NULL THEN 0 ELSE 1 END AS 'Transfer',
CASE WHEN AT.VALUE IS NULL THEN
(
SELECT top 1 product_type FROM [mci].[dbo].[f3_leads_file] WHERE alt_id = '00' +
calls.memberid
UNION
SELECT top 1 'DGU' AS product_type FROM [dbo].[stg_call_routing_data] WHERE alt_id =
calls.memberid
)
ELSE AT.VALUE END AS product_type
FROM dbo.cust_call_data AS calls
...
UNION이있는 두 번째 사례 진술에 유의하십시오.
SELECT top 1 product_type FROM [mci].[dbo].[f3_leads_file] WHERE alt_id = '00' +
calls.memberid
첫 번째 선택은 product_type을 "DGU", "MYW"또는 "HUA" 중 하나로 반환 할 수 있습니다 .
우리가 원하는 것은이 첫 번째 선택이 HUA 를 반환 한 다음이를 사용하는 것입니다 (우선 순위가 있음). 반환 값이 경우 MYW 후 사용 DGU 다른 사용 DGU을 .
나는 UNION이 여기서 전혀 도움이되지 않는다고 생각하며 아래 코드로 변경해야합니다 (하지만 값이 MYW 일 때 어떻게 처리합니까?)
...
CASE WHEN tx.call_id IS NULL THEN 0 ELSE 1 END AS 'Transfer',
CASE WHEN AT.VALUE IS NULL THEN
SELECT top 1 product_type FROM [mci].[dbo].[f3_leads_file] WHERE alt_id = '00' +
calls.memberid
ELSE AT.VALUE END AS product_type
FROM dbo.cust_call_data AS calls
...
아래 진술을 바탕으로 :
첫 번째 선택은 product_type을 "DGU", "MYW"또는 "HUA"중 하나로 반환 할 수 있습니다.
우리가 원하는 것은이 첫 번째 선택이 HUA를 반환 한 다음이를 사용하는 것입니다 (우선 순위가 있음). 반환 된 값이 MYW이면 DGU를 사용하고 DGU를 사용합니다.
HUA
제품 유형이 HUA
다른 모든 경우에 반품을 원합니다.DGU
CASE WHEN AT.VALUE IS NULL THEN (
SELECT TOP 1 IIF(product_type = 'HUA', 'HUA', 'DGU')
FROM [mci].[dbo].[f3_leads_file]
WHERE alt_id = '00' + calls.memberid
)
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다