sql >> データベース >  >> RDS >> PostgreSQL

Rails-カスタム名の関連付けでjoinを使用する

    where 実際のテーブル名を期待し、SQLに挿入するだけです:

    Article.where(whatever: {you: 'want'}).to_sql
    => "SELECT `articles`.* FROM `articles` WHERE `whatever`.`you` = 'want'"
    

    したがって、以下を使用できます:

    Measurement.joins(:examination).where(test_structures: { year: 2016, month: 5 })
    

    しかし、それは良くありません

    次に、モデルがそのようなものを抽象化する必要がある間、テーブル名に依存します。 mergeを使用できます

    Measurement.joins(:examination).merge(TestStructure.where(year: 2016, month: 5))
    


    1. SQLServerツリークエリ

    2. 親子関係のあるDBテーブルを多次元配列に変換する方法

    3. 複数回挿入する前に値をチェックするためのMySQLトリガー

    4. MySQLスクリプトをH2に変換します