새 SQL 함수: GREATEST_IGNORE_NULLS 및 LEAST_IGNORE_NULLS는 유사한 이름의 UDFs와 충돌할 수 있습니다.

주의

이 동작 변경 사항은 2024_03 번들에 있습니다.

번들의 현재 상태는 번들 기록 섹션을 참조하십시오.

Snowflake는 두 가지 새로운 기본 제공 함수를 도입합니다.

  • GREATEST_IGNORE_NULLS: 식 목록에서 가장 큰 NULL이 아닌 값을 반환합니다. 인자 값이 모두 NULLs이면 결과는 NULL입니다.

    GREATEST_IGNORE_NULLS 는 VARIANT를 포함한 모든 데이터 타입의 인자를 지원합니다.

  • LEAST_IGNORE_NULLS: 식 목록에서 가장 작은 NULL이 아닌 값을 반환합니다. 인자 값이 모두 NULLs이면 결과는 NULL입니다.

    LEAST_IGNORE_NULLS 는 VARIANT를 포함한 모든 데이터 타입의 인자를 지원합니다.

이름이 GREATEST_IGNORE_NULLS 또는 LEAST_IGNORE_NULLS인 사용자 정의 함수(UDF)가 있는 경우 함수를 호출하면 다음과 같은 효과가 있습니다.

변경 전:

이름이 GREATEST_IGNORE_NULLS 또는 LEAST_IGNORE_NULLS인 UDF에 대한 호출이 UDF로 확인됩니다.

변경 후:

이름이 GREATEST_IGNORE_NULLS 또는 LEAST_IGNORE_NULLS인 AUDF를 호출하면 새 기본 제공 GREATEST_IGNORE_NULLS 또는 LEAST_IGNORE_NULLS 함수로 연결됩니다. 기본 제공 GREATEST_IGNORE_NULLS 또는 LEAST_IGNORE_NULLS 함수는 UDF와 다르게 작동할 수 있습니다.

새로운 기본 제공 GREATEST_IGNORE_NULLS 또는 LEAST_IGNORE_NULLS 함수의 문서화된 의미 체계가 UDF의 의미 체계와 일치하지 않을 경우 다음 중 하나를 수행할 수 있습니다.

  • (ALTER FUNCTION … RENAME TO … 를 사용하여) UDF의 이름을 바꾸고 원래 UDF 이름에 대한 모든 참조를 새 이름으로 바꿉니다.

  • UDF를 포함하는 데이터베이스와 스키마의 이름을 지정하여 UDF에 대한 모든 참조를 정규화합니다. 예:

    SELECT my_database.my_schema.greatest_ignore_nulls(...);
    
    SELECT my_database.my_schema.least_ignore_nulls(...);
    
    Copy

참조: 1354