title: SQL Server - complete results with non existent data
body: <p>I have a table where I have all the customers and a table where I have all their restrictions. </p>
  
  <pre><code>CUSTOMER
  
  customer_id customer_name
  1 name 1
  2 name 2
  
  CUSTOMER_RESTRICTIONS
  
  rest_type day_of_week hour_start hour_stop customer_id
  
  TYPE1  0  08:00  12:00  1
  TYPE1  0  13:00  17:00  1
  TYPE2  0  17:00  23:59  1
  </code></pre>
  
  <p>Problem: I only have a record for a restriction type and a customer when the customer has a restriction and this is a problem in the visualization I want to build.</p>
  
  <p>I need every customer, every day and every restriction type, even when there is no restriction. In that case hour_start and hour_stop would be NULL.</p>
  
  <p>For the tables shown, the output would be</p>
  
  <pre><code>rest_type day_of_week hour_start hour_stop customer_id
  
  TYPE1  0  08:00  12:00  1
  TYPE1  0  08:00  12:00  1
  TYPE1  1  NULL  NULL  1
  TYPE1  2  NULL  NULL  1
  TYPE1  3  NULL  NULL  1
  TYPE1  4  NULL  NULL  1
  TYPE1  5  NULL  NULL  1
  TYPE1  6  NULL  NULL  1
  TYPE1  1  NULL  NULL  1
  TYPE1  2  NULL  NULL  1
  TYPE1  3  NULL  NULL  1
  TYPE1  4  NULL  NULL  1
  TYPE1  5  NULL  NULL  1
  TYPE2  0  NULL  NULL  1
  TYPE2  1  NULL  NULL  1
  TYPE2  2  NULL  NULL  1
  TYPE2  3  NULL  NULL  1
  TYPE2  4  NULL  NULL  1
  TYPE2  5  NULL  NULL  1
  TYPE2  6  NULL  NULL  1
  TYPE1  0  NULL  NULL  2
  TYPE1  1  NULL  NULL  2
  TYPE1  2  NULL  NULL  2
  TYPE1  3  NULL  NULL  2
  TYPE1  4  NULL  NULL  2
  TYPE1  5  NULL  NULL  2
  TYPE1  6  NULL  NULL  2
  TYPE2  0  NULL  NULL  2
  TYPE2  1  NULL  NULL  2
  TYPE2  2  NULL  NULL  2
  TYPE2  3  NULL  NULL  2
  TYPE2  4  NULL  NULL  2
  TYPE2  5  NULL  NULL  2
  TYPE2  6  NULL  NULL  2
  </code></pre>
  
  <p>How can I achieve that? I couldn't even start to build this query.</p>