Tutaj w Londynie jesteśmy obecnie o godzinę przed UTC. Tak więc - jeśli wezmę twoją strefę czasową bez znacznika czasu i powiem, że jest w UTC, wydrukuję ją dla mojej lokalnej strefy czasowej.
richardh=> SELECT ((timestamp '2015-10-24 16:38:46') AT TIME ZONE 'UTC');
timezone
------------------------
2015-10-24 17:38:46+01
(1 row)
Ale chcesz "EST", który wydaje się być gdzieś w obu Amerykach, sądząc po zwracanej wartości. Jeśli chcesz, możesz zapakować wyrażenie w małą funkcję SQL.
richardh=> SELECT ((timestamp '2015-10-24 16:38:46') AT TIME ZONE 'UTC') AT TIME ZONE 'EST';
timezone
---------------------
2015-10-24 11:38:46
(1 row)
Edycja:jak to zrobić w zapytaniu
SELECT ((stored_timestamp AT TIME ZONE 'UTC') AT TIME ZONE 'EST') AS local_timestamp
FROM my_table;
Prawdopodobnie będziesz chciał zdobyć książkę wprowadzającą na temat SQL, jeśli tego rodzaju rzeczy sprawiają Ci problemy.