title: NULL vs. `infinity` in PostgreSQL range types
body: <p>What is the meaning of 'infinity' in PostgreSQL range types? Is there any difference between specifying <code>infinity</code> or <code>-infinity</code> as a bound, or <code>NULL</code>? I.e. is <code>infinity</code> an explicit form of specifying that the range bound is infinite, whereas <code>NULL</code> would implicit specify an infinite bound range?</p>
  
  <p>See the following examples:</p>
  
  <pre><code>SELECT tstzrange('-infinity','infinity') &amp;&amp; tstzrange(NULL, NULL);
   ?column?
  ----------
   t
  
  SELECT tstzrange('2013-01-01 00:00:00+01', '2013-02-01 00:00:00+01')
      &amp;&amp; tstzrange(NULL, '2013-03-01 00:00:00+01');
   ?column?
  ----------
   t
  
  SELECT tstzrange('2013-01-01 00:00:00+01', '2013-02-01 00:00:00+01')
      &amp;&amp; tstzrange('-infinity', '2013-03-01 00:00:00+01');
   ?column?
  ----------
   t
  </code></pre>