However,therearewaysforyoutogetresultsthatareinyourpreferredtimezone.FirstdeterminehowmanyhoursyourdesiredtimezoneisofffromMST.Forexample,ESTis+2hours.PSTis-1hour. Knowingthetimeoffset,youcanreplaceallyoursqlstatementsof
SELECTNOW(); with
SELECTDATE_ADD(NOW(),INTERVAL2HOUR); whichwillgiveyouanESTdateresult.ForaresultinPST,youwoulddo:
SELECTDATE_SUB(NOW(),INTERVAL1HOUR); Ifyouareworkingwithtimeinsecondsinsteadofdates,thenfactorintheoffsetinseconds.Becausethereare3600secondsinanhour,andESTis2hourslaterthanMST,thefollowingconvertstimestampsfromMSTtoEST:
SELECTunix_timestamp()+(36002); SELECTFROM_UNIXTIME(UNIX_TIMESTAMP()+(36002)); SeetheMysqLManual'sDateandTimeFunctionsformoreinformation. Dependingonyourapplication,youmayalsoneedtodooneofthefollowing(butnotboth): 1.Findeveryplaceinyourcodewhereadateortimeisdisplayedtothebrowserandhaveauserdefinedfunctionchangeittoaddorsubtracttheappropriatenumberofhoursbeforedisplayingit. 2.Findeveryplaceinyourcodewheredatesortimesareinputintoyoursystemandhaveauserdefinedfunctionaddorsubtracttheappropriatenumberofhoursbeforestoringit.