title: Include null values in sqlite result
body: <p>Hello sqlite3 experts,</p>
  
  <p>i have a table called positionlogs with the following structure:</p>
  
  <pre><code>id | positionId | scanTime
   1 |          1 | 2019-05-11 14:18:58.802 +00:00
   2 |          2 | 2019-05-11 14:24:05.518 +00:00
   3 |          1 | 2019-05-11 14:34:01.777 +00:00
   4 |          1 | 2019-05-11 14:34:02.549 +00:00
   5 |          1 | 2019-05-11 14:34:06.560 +00:00
   6 |          1 | 2019-05-11 14:34:07.484 +00:00
  </code></pre>
  
  <p>and i execute the following query:</p>
  
  <pre><code>SELECT ranges.start, 
         ranges.end,
         count(positionLogs.id) as totalScans
   FROM 
   (
    SELECT strftime('%Y-%m-%d %H:%M', '2019-05-11 14:35','-55 minutes') as start, strftime('%Y-%m-%d %H:%M', '2019-05-11 14:35','-50 minutes') as end UNION ALL
    SELECT strftime('%Y-%m-%d %H:%M', '2019-05-11 14:35','-50 minutes') as start, strftime('%Y-%m-%d %H:%M', '2019-05-11 14:35','-45 minutes') as end UNION ALL
    SELECT strftime('%Y-%m-%d %H:%M', '2019-05-11 14:35','-45 minutes') as start, strftime('%Y-%m-%d %H:%M', '2019-05-11 14:35','-40 minutes') as end UNION ALL
    SELECT strftime('%Y-%m-%d %H:%M', '2019-05-11 14:35','-40 minutes') as start, strftime('%Y-%m-%d %H:%M', '2019-05-11 14:35','-35 minutes') as end UNION ALL
    SELECT strftime('%Y-%m-%d %H:%M', '2019-05-11 14:35','-35 minutes') as start, strftime('%Y-%m-%d %H:%M', '2019-05-11 14:35','-30 minutes') as end UNION ALL
    SELECT strftime('%Y-%m-%d %H:%M', '2019-05-11 14:35','-30 minutes') as start, strftime('%Y-%m-%d %H:%M', '2019-05-11 14:35','-25 minutes') as end UNION ALL
    SELECT strftime('%Y-%m-%d %H:%M', '2019-05-11 14:35','-25 minutes') as start, strftime('%Y-%m-%d %H:%M', '2019-05-11 14:35','-20 minutes') as end UNION ALL
    SELECT strftime('%Y-%m-%d %H:%M', '2019-05-11 14:35','-20 minutes') as start, strftime('%Y-%m-%d %H:%M', '2019-05-11 14:35','-15 minutes') as end UNION ALL
    SELECT strftime('%Y-%m-%d %H:%M', '2019-05-11 14:35','-15 minutes') as start, strftime('%Y-%m-%d %H:%M', '2019-05-11 14:35','-10 minutes') as end UNION ALL
    SELECT strftime('%Y-%m-%d %H:%M', '2019-05-11 14:35','-10 minutes') as start, strftime('%Y-%m-%d %H:%M', '2019-05-11 14:35','-5 minutes') as end UNION ALL
    SELECT strftime('%Y-%m-%d %H:%M', '2019-05-11 14:35','-5 minutes') as start, strftime('%Y-%m-%d %H:%M', '2019-05-11 14:35','-0 minutes') as end) as ranges
    LEFT join positionlogs on (positionlogs.scanTime &gt;= ranges.start AND positionlogs.scanTime &lt;=ranges.end)
     where positionlogs.positionId = 1
     group by start;
  </code></pre>
  
  <p>What i am trying to achieve is to get a result similar to the below:</p>
  
  <pre><code>start            | end                | totalScans
  2019-05-11 13:40 | 2019-05-11 13:45   | 0
  2019-05-11 13:45 | 2019-05-11 13:50   | 0
  2019-05-11 13:50 | 2019-05-11 13:55   | 0
  2019-05-11 13:55 | 2019-05-11 14:00   | 0
  2019-05-11 14:00 | 2019-05-11 14:05   | 0
  2019-05-11 14:05 | 2019-05-11 14:10   | 0
  2019-05-11 14:10 | 2019-05-11 14:15   | 0
  2019-05-11 14:15 | 2019-05-11 14:20   | 1
  2019-05-11 14:20 | 2019-05-11 14:25   | 1
  2019-05-11 14:25 | 2019-05-11 14:30   | 4
  2019-05-11 14:30 | 2019-05-11 14:35   | 0
  </code></pre>
  
  <p>but instead of that my query returns this:</p>
  
  <pre><code>start            | end                | totalScans
  2019-05-11 14:15 | 2019-05-11 14:20   | 1
  2019-05-11 14:20 | 2019-05-11 14:25   | 1
  2019-05-11 14:25 | 2019-05-11 14:30   | 4
  </code></pre>
  
  <p>I tried several different ways without success. 
  Any help/suggestions are really appreciated!</p>