title: Can I make an Eloquent model load a relationship with an sql JOIN instead of generating separate sql queries?
body: <p>I'm a developer coming from CakePHP and making my first project with Laravel.
  In CakePHP when I defined a model and its relations, there was an option to set the join strategy on a relationship: <code>strategy</code> (<code>join</code> or <code>select</code>). By default it uses <code>join</code> and when I load a related model, it will do so in a single query by adding a <code>JOIN</code> statement. You could optionally use <code>select</code> which would generate a separate query.</p>
  
  <p>Now, when I'm using eager loading in Laravel, for example:</p>
  
  <pre class="lang-php prettyprint-override"><code>$user = App\User::with(['articles'])-&gt;first();
  </code></pre>
  
  <p>This actually results in two queries being generated, one for getting the user's record, and one for getting the associated articles. This is the same as if I had specified the <code>select</code> strategy in my CakePHP model. However, I would like to use the <code>join</code> strategy instead, so I can do things like ordering by or filtering by a related table's column. I haven't found any way to do this yet. Does something like this exist in laravel/eloquent?</p>