エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
ActiveRecordでCTEを使ってクエリを分割して個別にテストする
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
ActiveRecordでCTEを使ってクエリを分割して個別にテストする
Rails 7.1 以降では、任意の ActiveRecord Relation をCTEとして使用することができます。 共通テーブル... Rails 7.1 以降では、任意の ActiveRecord Relation をCTEとして使用することができます。 共通テーブル式(CTE)を使うと、複雑なクエリ名前付きの一時結果セットに分割でき、クエリの可読性を高めるのに役立ちます。ActiveRecordでは .with クエリーメソッドに任意の ActiveRecord Relation を渡すことでCTEを定義できます。これは個々の結果セットをテスト可能になることを意味します。複雑なクエリを分割することで、テストしやすくなり、保守性を高めることにもつながります。ただし現時点では再帰的に利用することはできません。 共通テーブル式の例 「レビューの平均スコアが4以上のユーザーを検索する」場合、次の様に書くことができます。 SQL WITH average_scores AS ( SELECT reviewee_id, AVG(s

