title: Postgres "time zone at" isn't respecting mountain standard time when converting
body: <p>I have a column <code>starts_at</code> with a type of <code>TIMESTAMP WITHOUT TIME ZONE</code> because it's representing the time of an appointment and should not change during a DST shift.</p>
  
  <p>However, our library that handles recurring appointments needs this time in UTC. I am attempting to convert <code>starts_at</code> to UTC, but am seeing that I'm getting times representing MDT (daylight savings time) rather than MST (standard time).</p>
  
  <p>For example, take the following:</p>
  
  <p><code>SELECT starts_at, timezone('America/Denver', starts_at) AS new_starts_at</code></p>
  
  <p>I would expect to get the following result:</p>
  
  <pre><code>--------------------------------------------------
  | starts_at              | new_starts_at
  --------------------------------------------------
  | 2018-09-04 13:05:00    |  2018-09-04 20:05:00+00
  </code></pre>
  
  <p>Instead, I'm getting the following:</p>
  
  <pre><code>--------------------------------------------------
  | starts_at              | new_starts_at
  --------------------------------------------------
  | 2018-09-04 13:05:00    |  2018-09-04 19:05:00+00
  </code></pre>
  
  <p><code>new_starts_at</code> should be returning in <code>MST</code>, which would be <code>2018-09-04 20:05:00+00</code>. My impression was that using the Olsen timezone (<code>America/Denver</code>) would inform Postgres of whether or not there was a DST shift in place. If I replace <code>America/Denver</code> with <code>MST</code>, I see the correct result.</p>
  
  <p>I'm sure this is just a misunderstanding of Postgres timezone types on my part. That said, thanks in advance for the education!</p>