programing

SQL과 빈 문자열의 병합

bestprogram 2023. 4. 22. 10:58

SQL과 빈 문자열의 병합

다음과 같은 것이 있습니다.

Select Coalesce(Other,Industry) Ind from registration

중요한 것은 말이다Other빈 문자열 또는NULL. 어떻게 해야 하나요?coalesce만약을 위해 일하다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