sqlboiler ~参照編まとめ~
2022年04月08日 6:22
sqlboilerの参照系のクエリ構築の記事になります。
ポイントとしてはクエリに利用するテーブル名やカラム名などはタイプセーフに扱いましょう。
タイプセーフにクエリを構築することで、テーブル構造が変わった際の変更忘れもコンパイルエラーを起こして、安全に開発することができます。
sqlboilerでのクエリ構築は主に、Query Mod Systemにより制御されます。
Query Mod SystemはStarterとFinisherによるクエリ構築を提供しています。
Starter
sqlboilerで生成されたmodelの複数名になります。(UsersやStaffsなど)
Finisher
StarterとWhereなどの取得条件の後にくる関数で、Finisherをセットすることで最終的なクエリ結果をsqlboilerのmodelで返します。
下記はusersテーブルから全てのデータをUsersmodelとして取得している例になります。
該当レコードを1つ取得
該当レコードを全て取得
該当レコード数を取得
該当レコードの存在有無を取得
上記のような単純なクエリだけでなく、複雑なクエリが必要になることもあります。
通常のSQLと同じように、whereやgroup_by, limit, offsetなどSQLで使える基本的なものは
sqlboilerでも使えます。
sqlboilerはタイプセーフに利用しよう!
クエリに限らずですが、sqlboiler model で生成された識別子を利用することで安全な実装をすることができます。
上記処理をタイプセーフに書き換えるとこうなります。
診断を受けるとあなたの現在の業務委託単価を算出します。今後副業やフリーランスで単価を交渉する際の参考になります。また次の単価レンジに到達するためのヒントも確認できます。
目次を見る