IT TIP

빈 문자열이있는 SQL Coalesce

itqueen 2020. 12. 28. 22:21
반응형

빈 문자열이있는 SQL Coalesce


다음이 있습니다.

     Select Coalesce(Other,Industry) Ind from registration

문제는 Other가 빈 문자열이거나 NULL 일 수 있다는 것입니다. Other가 빈 문자열 인 경우 Coalesce가 여전히 Industry를 반환하도록 통합 작업을 수행하려면 어떻게해야합니까?


CASE식을 사용 하거나 NULLIF:

SELECT COALESCE(NULLIF(Other,''),Industry) Ind FROM registration

이 시도

Select Coalesce(nullif(Other,''),Industry) Ind from registration

NULL <> ''평가하지 않는 바로 가기를 사용할 수도 있습니다 TRUE...

CASE WHEN other <> '' THEN other ELSE industry END

논리는 다음과 같이 작동합니다.

  • CASE WHEN 'fubar' <> '' THEN other ELSE industry END
    => CASE WHEN true THEN other ELSE industry END
    =>other

  • CASE WHEN '' <> '' THEN other ELSE industry END
    => CASE WHEN false THEN other ELSE industry END
    =>industry

  • CASE WHEN NULL <> '' THEN other ELSE industry END
    => CASE WHEN NULL THEN other ELSE industry END
    =>industry

참조 URL : https://stackoverflow.com/questions/17283978/sql-coalesce-with-empty-string

반응형