SQL 文を直接使う方法

参考:

Active Record で生 SQL を実行 | 酒と涙とRubyとRailsと

Rails で ActiveRecord / Arel を使って複雑な SELECT 文を実行する方法 | Rails Webook

Rails❤️SQL のサンプルコード – Qiita

Rails から生 SQL 叩いてみる | はんぱものブログ

書き方

参考:

Rails を学ぶなら知っておきたい SQL についての基礎知識 | 28歳からはじめるフリーランス LIFE!

SELECT 系 SQL でできることとか ActiveRecord でできること – GitHub Gist

find_by_sql

参考:

Rails での SQL 直接実行には find_by_sql がベスト | Hive Color

find_by_sql を使う際の Tips | LukeSilvia’s diary

Rails の find_by_sql で取得できるモデルからは、select 句で指定した名前で値が取れる – Qiita

find_by_sql | Rails ドキュメント (railsdoc.com)

find_by_sql – ActiveRecord::Querying | Ruby on Rails API [Official]

配列、find_by_sql で .first などを指定しなければならない理由を教えてください – teratail

WHERE … IN 句

参考:

ActiveRecord で IN 句を使用する | ABC Blog

sanitize_sql_array

SQL をサニタイズする。

ActiveRecord::Base.send(
  :sanitize_sql_array,
  ["select * from users where id = ?", id]
)

参考:

Rails, how to sanitize SQL in find_by_sql – Stack Overflow

select_all

参考:

select_all | Rails ガイド [公式]

select_all – ActiveRecord::ConnectionAdapters::DatabaseStatements | Ruby on Rails API [Official]

DatabaseStatements

参考:

ActiveRecord::ConnectionAdapters::DatabaseStatements | Ruby on Rails API [Official]

記事をシェアする:
タグ:

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

Protected by reCAPTCHA