inner join

inner joinとは

日本語で言えば内部結合。
内部結合では、2つのDBで共通のカラムを持つ場合、その値が一致するものだけを結合する。

 

以下構文

SELECT table_name.column_name from table1 INNER JOIN table2 on table1.column = table2.column;

テーブル1からcolumn_nameを取ってきた後に、テーブル1と2でカラム名が同じものを結合して1つのテーブルとする。

 

railsでは

モデル名.joins(条件)

Category.joins(:posts)
# SELECT categories.* FROM categories INNER JOIN posts ON posts.category_id = categories.id

 

参考

joins - リファレンス - - Railsドキュメント