dbt

【SQL】SQL Linter ~ sqlfmt ~

■ はじめに https://dk521123.hatenablog.com/entry/2024/02/28/225002 の続き。 SQL の Linter (リンター) で「SQLFluff」がでてくるが、 どうも「sqlfmt」と併用して使うことも多いみたいなので 調べてみた。 目次 【1】sqlfmt 【2】環境構築 【3】構文…

【dbt】dbt ~ 更新 / Delete and Insert ~

dbt

■ はじめに https://dk521123.hatenablog.com/entry/2023/12/07/060129 の続き。 今回は、Delete and Insert について、深堀っていく 目次 【1】構文 【2】サンプル 【1】構文 {{ config( materialized='incremental', unique_key=['user_id' , ...], inc…

【dbt】dbt ~ 更新 / Update or Insert ~

dbt

■ はじめに https://dk521123.hatenablog.com/entry/2023/12/07/060129 の続き。 今回は、Update or Insert (Upsert)について、深堀っていく 目次 【1】Update or Insert に関する属性 1)merge_update_columns / merge_exclude_columns 【2】構文 【3…

【dbt】dbt ~ 環境設定編 ~

dbt

■ はじめに https://dk521123.hatenablog.com/entry/2023/05/30/151003 の続き。 DBT に関する環境設定をまとめておく 目次 【0】使用上の注意 1)PostgreSQLを使う場合 【1】dbt インストール方法 【2】pip によるインストール 1)前提条件 2)Window…

【dbt】dbt ~ aliases ~

dbt

■ はじめに 小ネタ。 今回は、DBTのaliases (エイリアス)を学んだので メモっておく 目次 【1】alias 【2】使いどころ 【3】構文 1)解説 【1】alias * テーブルなどを別名(=alias)を付けることができる => モデルなどは、デフォルトだとファイル…

【dbt】dbt ~ ドキュメント化 / dbt docs ~

dbt

■ はじめに https://dk521123.hatenablog.com/entry/2023/05/30/151003 でも少し触れたが、DBT の ドキュメント化について 徐々にまとめていく 目次 【1】公式ドキュメント 【2】dbt docs コマンド 0)dbt docs -h 1)dbt docs generate 2)dbt docs se…

【dbt】dbt ~ 基本編 / Source ~

dbt

■ はじめに DBT の Source について、徐々にまとめていく 目次 【1】Source 【2】ベストプラクティス 【3】使い方 1)Source の宣言 2)フォーマット 【4】Hello world 1)準備 2)サンプル 【1】Source * 変換の元となるデータを「ソース」と呼ぶ …

【dbt】dbt ~ 更新 / 基礎知識編 ~

dbt

■ はじめに DBT での色々な更新について徐々にではあるがまとめていく 目次 【0】materialized 1)incremental_strategy 2)is_incremental() 【2】使用上の注意 1)PostgreSQLの場合 【0】materialized cf. materialized = 具体化/具現化する https:/…

【dbt】dbt ~ 更新 / DROP + CTAS ~

dbt

■ はじめに https://dk521123.hatenablog.com/entry/2023/12/07/060129 の続き。 今回は、DROP + CTAS(CREATE TABLE AS SELECT) について、深堀っていく 目次 【1】DROP & CTAS 【2】構文 【1】DROP & CTAS * DROP + CTAS(CREATE TABLE AS SELECT) …

【dbt】dbt ~ Macro ~

dbt

■ はじめに dbt の macro (マクロ) について、徐々に学んでいく 【1】macro (マクロ) * 再利用可能なコードを作成する機能 => 元々は、テンプレートエンジン Jinja の機能 => Jinja のマクロについては、以下の関連記事を参照 Jinja ~ マクロ ~ https://d…

【dbt】dbt ~ Model あれこれ ~

dbt

■ はじめに https://dk521123.hatenablog.com/entry/2023/11/25/231128 の続き。 今回は、DBTのModel について、徐々にTipsを書き溜めておく 目次 【1】config 1)alias 2)schema 3)database サンプル 【2】変数 1)変数設定 2)変数の参照 3)サ…

【dbt】dbt ~ 基本編 / Model ~

dbt

■ はじめに https://dk521123.hatenablog.com/entry/2023/06/30/000000 https://dk521123.hatenablog.com/entry/2023/05/30/151003 https://dk521123.hatenablog.com/entry/2023/11/20/230946 の続き。 dbt の モデル(Model)について、徐々に学んでみる 目…

【dbt】dbt ~ 基本編 / Seed ~

dbt

■ はじめに https://dk521123.hatenablog.com/entry/2023/06/30/000000 https://dk521123.hatenablog.com/entry/2023/05/30/151003 の続き。 dbt の シード(Seed)について、徐々に学んでみる 目次 【1】Seed 【2】Hello world 1)前提条件 2)実行手順…

【dbt】dbt ~ 基礎知識編 ~

dbt

■ はじめに dbt の良さとか、何ができるかってのを徐々にだがメモしていく 目次 【1】dbt 【2】サポートデータプラットフォーム 【3】利点 1)環境の切替が容易 2)シンプルな実装が可能 3)ドキュメント生成 4)テストの自動化 【4】動画 【1】dbt…

【トラブル】【dbt】dbt に関するトラブル

■ はじめに https://dk521123.hatenablog.com/entry/2023/05/30/151003 などで発生したトラブルをまとめる 目次 【1】「dbt init users」実行時に「Error: Invalid value for '--profiles-dir'」が表示 【2】Windowsで「pip install --upgrade pip wheel s…

【dbt】dbt ~ 入門編 ~

dbt

■ はじめに https://dk521123.hatenablog.com/entry/2023/06/30/000000 の続き。 dbt に関するお仕事が入ったので、急遽メモ。 目次 【1】dbt 【2】インストール 【3】QuickStart 0)前提条件 1)作業ディレクトリを作成する 2)テスト用DB環境を準備…