スリ飯屋MaLankaのフリーエンジニアな日々

このブログでは、フリーランス5期目となる自身の実体験から、フリーランスエンジニアになるためのノウハウ、ブログや沖縄移住、スリランカの最新情報について発信します。

【Rails】joinしたテーブルに対し、where句で特定の日付前後(以前以降)で絞り込みしたい

※記事内に提携先企業のアフィリエイト広告(リンク、バナー等)、Google広告を含む場合があります

【Rails】joinしたテーブルに対し、where句で特定の日付前後(以前以降)で絞り込みしたい


こんにちは、現役沖縄フリーランスエンジニアのmah(MaLanka)です。


このブログでは、

僕がIT未経験から約1年でフリーランスエンジニアになるまでの過程、

ノウハウなどを書いていきます。


今回は、

  • 【Rails】joinしたテーブルに対し、where句で特定の日付前後(以前以降)で絞り込みしたい

です。


【Rails】joinしたテーブルに対し、where句で特定の日付前後(以前以降)で絞り込みしたい




結論


where句でテーブル名とカラム名両方を指定し、

文字列で条件指定すれば出来ました。


Model.joins(:join対象のテーブル名).where("join対象のテーブル名.join対象のテーブルにあるカラム名 >= ?", 日付)




例: ordersテーブルのorder_dateが、2020/01/20以降のUserを取得する


User.joins(:orders).where("orders.order_date >= ?", Date.parse('2020/01/20'))




発行されるSQL


SELECT  1 AS one FROM `users` INNER JOIN `orders` ON `orders`.`user_id` = `users`.`id` WHERE (orders.order_date >= '2020-01-20') LIMIT 1




参考リンク


teratail【テラテイル】|ITエンジニア特化型Q&Aサイト

Rails ActiveRecord/SQL 小技集 #Ruby - Qiita




以上です。




RailsやRubyを学びたい人へ


RailsやRubyを学びたい人は、

RailsHack(レイルズハック)という、

最近できた新しいプログラミングスクール(今なら通常価格69,800円が、早期割で29,800円!)か、

Udemy で下記のコースを受講すると良いです★


✅1. フルスタックエンジニアが教える 即戦力Railsエンジニア養成講座

✅2. 【はむ式】ハンズオンで学ぶRuby on Rails 6【Dockerにも触れられる】 <- おすすめ。ハムさんはReactやTypeScriptの教材も非常に丁寧。

✅3. はじめてのRuby on Rails入門-RubyとRailsを基礎から学びWebアプリケーションをネットに公開しよう




また、

Udemy は定期的にセールをやっていますし(90%OFFとかもザラ)、

「30日間なら返金できる」ので、

満足できなかった時でも安心です。



【公式】RailsHack(レイルズハック)

【公式】Udemyで学んでみる




最後に


下記の表に、

フリーランスエンジニア向けの人気エージェントをまとめてみました。


エージェント選びで悩んでいる方は是非参考にしてみてくださいね★





あわせて読みたい


www.malanka.tech


www.malanka.tech


www.malanka.tech


www.malanka.tech