sql >> Database >  >> RDS >> Mysql

Hoe SQL-query naar Rails Active Record-query te converteren?

Probeer dit voor rails 3:

Training.select("trainings.id, trainings.name, trainings.order, 
                 trainings.id AS history_id, training_histories.finished_at,
                 training_histories.score").
         joins("LEFT OUTER JOIN training_histories 
                ON training_histories.training_id = trainings.id 
                AND training_histories.id = (SELECT th1.id FROM training_histories th1          
                                             WHERE th1.training_id = tc.id
                                             AND th1.finished_at IS NOT NULL
                                             ORDER BY th1.finished_at DESC LIMIT 1)").
         where("trainings.id > 4 AND trainings.id < 8").
         group("trainings.id").
         order("trainings.order_by ASC, trainings.id ASC")

Kortom, je converteert gewoon je vooraf geschreven zoekopdracht naar Rails 3-zoekmethoden.




  1. Zijn er gepubliceerde richtlijnen voor coderingsstijlen voor SQL?

  2. WHERE Clausule vs ON bij gebruik van JOIN

  3. Hoe een record te krijgen met maximale waarde in MySQL

  4. Nieuw Mysqli-object is Null