title: Creating database view in migration laravel 5.2
body: <p>I'm trying to create a database view via a migration in Laravel 5.2 as I need to hand a fairly complex query to a view.  I have models / tables for leagues, teams, players, and points.  Each one has a hasMany / belongsTo relationship with the one before it.  The goal is to create a table where each row is a league name, a sum of all remaining points for the league, and a count of points.remnants where the value of points.remnants > 4. </p>
  
  <p>Major Edit: </p>
  
  <p>What I have so far is </p>
  
  <pre><code>         DB::statement( 'CREATE VIEW wones AS
          SELECT
            leagues.name as name,
            sum(points.remnants) as trem,
            count(case when points.remnants &lt; 4 then 1 end) as crem
       FROM leauges
         JOIN teams ON (teams.league_id = leagues.id)
         JOIN players ON (players.team_id = teams.id)
         JOIN points ON (points.player_id = players.id);
       ' );
  </code></pre>
  
  <p>This does not throw any errors, but it only returns one row and the sum is for all points in all leagues.   </p>
  
  <p>What I'm looking for is to create a table where there is a row for each league, that has league name, total remaining points for that league, and total points with less than 4 remaining per league.</p>
  
  <p>Marked as solved.  See the accepted answer for most of this issues.  The one row problem was because I wasn't using GROUP BY with the count().</p>