L'obtention de date avec le décalage horaire

Je suis en train d'extraire la date à partir d'une requête dans postgres. L'horodatage est stocké comme UTC, donc, si j'ai 1/1/2014 02:00:00, je veux la date, heure du pacifique, à 12/31/2013, pas 1/1/2014. Je suis très proche, mais la requête 2 et 3 encore de retour 1/1/2014.

SELECT '1-1-2014 02:00:00'::timestamp at time zone 'America/Los_Angeles';

retourne

2014-01-01 02:00:00-08

-

SELECT CAST('1-1-2014 02:00:00'::timestamp at time zone 'America/Los_Angeles' AS Date);

retourne

2014-01-01

mais je veux qu'il revienne 2013-12-31.

SELECT CAST('1-1-2014 00:02:00'::timestamp at time zone 'America/Los_Angeles' AS Date) at time zone 'America/Los_Angeles';

retourne

2014-01-01 00:00:00

mais je veux qu'il revienne 2013-12-31 00:00:00

En gros, je veux retourner la date dans le fuseau horaire il est, dans ce cas, le fuseau horaire du pacifique.

OriginalL'auteur WallMobile | 2014-04-10