널 안전 동등성(Null-safe equality, equals 매크로)

널 안전 동등성(Null-safe equality, equals 매크로)

enable_truthy_nulls_equals_macro 플래그는 dbt의 equals 매크로에서 널 안전 동등성을 활성화해요. 기본값은 false예요.

출처: 문서

본문

enable_truthy_nulls_equals_macro dbt v1 Latest dbt v1
Introduced 2025.02 1.9.0
Matured (default → true)
Removed

enable_truthy_nulls_equals_macro 플래그는 기본값이 false예요. dbt_project.yml에서 true로 설정하면, 인크리멘탈과 스냅샷 materialization에서 사용하는 dbt equals 매크로의 널 안전 동등성이 활성화돼요.

기본적으로 equals() 매크로는 SQL의 삼치 논리(three-valued logic, 3VL)를 따르므로 NULL = NULLTRUE가 아니라 UNKNOWN으로 평가돼요.

enable_truthy_nulls_equals_macro 플래그가 활성화되면 equals() 매크로는 두 NULL 값을 같게 취급하는 IS NOT DISTINCT FROM 연산자의 의미론을 사용해요.

플래그를 활성화하려면 dbt_project.ymlflags 아래에 추가해요:

dbt_project.yml

flags:
  enable_truthy_nulls_equals_macro: true

더 알아보기 (Learn more)