我正在使用 DBT 將資料從包含所有 STRING 欄位的源表轉換為具有 TYPED 欄位的目標表(例如:DATE、INT、...)
我想確保(使用 dbt test 命令)在啟動 dbt run 命令之前可以進行資料型別轉換。例如,在預期的 DATE 欄位(在我的源表中的 STRING 中),必須對整個列值運行斷言才能通過測驗。
在 dbt-expectations 包中,有一些有用的測驗,例如“expect_column_values_to_be_of_type”,但該測驗檢查列資料型別(在表的結構中),而不是檢查所有列值是否與特定資料型別匹配。
您是否有避免撰寫自定義測驗并使用本機或打包測驗的想法?
編輯:候選人應該是“expect_column_values_to_match_regex”,但也許更好......
非常感謝您的幫助:)
uj5u.com熱心網友回復:
在DBT包- DBT-的預期,我認為expect_column_values_to_match_regex
和expect_column_values_to_not_match_regex
是最適合你的要求。
其實你可以dbt-utils.expression_is_true
用來寫你自己的SQL。此外,您已經詢問過native
,這就是使用本機 SQL 的方式。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/395332.html