horology.out 143 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344
  1. --
  2. -- HOROLOGY
  3. --
  4. SET DateStyle = 'Postgres, MDY';
  5. SHOW TimeZone; -- Many of these tests depend on the prevailing setting
  6. TimeZone
  7. ----------
  8. PST8PDT
  9. (1 row)
  10. --
  11. -- Test various input formats
  12. --
  13. SELECT timestamp with time zone '20011227 040506+08';
  14. timestamptz
  15. ------------------------------
  16. Wed Dec 26 12:05:06 2001 PST
  17. (1 row)
  18. SELECT timestamp with time zone '20011227 040506-08';
  19. timestamptz
  20. ------------------------------
  21. Thu Dec 27 04:05:06 2001 PST
  22. (1 row)
  23. SELECT timestamp with time zone '20011227 040506.789+08';
  24. timestamptz
  25. ----------------------------------
  26. Wed Dec 26 12:05:06.789 2001 PST
  27. (1 row)
  28. SELECT timestamp with time zone '20011227 040506.789-08';
  29. timestamptz
  30. ----------------------------------
  31. Thu Dec 27 04:05:06.789 2001 PST
  32. (1 row)
  33. SELECT timestamp with time zone '20011227T040506+08';
  34. timestamptz
  35. ------------------------------
  36. Wed Dec 26 12:05:06 2001 PST
  37. (1 row)
  38. SELECT timestamp with time zone '20011227T040506-08';
  39. timestamptz
  40. ------------------------------
  41. Thu Dec 27 04:05:06 2001 PST
  42. (1 row)
  43. SELECT timestamp with time zone '20011227T040506.789+08';
  44. timestamptz
  45. ----------------------------------
  46. Wed Dec 26 12:05:06.789 2001 PST
  47. (1 row)
  48. SELECT timestamp with time zone '20011227T040506.789-08';
  49. timestamptz
  50. ----------------------------------
  51. Thu Dec 27 04:05:06.789 2001 PST
  52. (1 row)
  53. SELECT timestamp with time zone '2001-12-27 04:05:06.789-08';
  54. timestamptz
  55. ----------------------------------
  56. Thu Dec 27 04:05:06.789 2001 PST
  57. (1 row)
  58. SELECT timestamp with time zone '2001.12.27 04:05:06.789-08';
  59. timestamptz
  60. ----------------------------------
  61. Thu Dec 27 04:05:06.789 2001 PST
  62. (1 row)
  63. SELECT timestamp with time zone '2001/12/27 04:05:06.789-08';
  64. timestamptz
  65. ----------------------------------
  66. Thu Dec 27 04:05:06.789 2001 PST
  67. (1 row)
  68. SELECT timestamp with time zone '12/27/2001 04:05:06.789-08';
  69. timestamptz
  70. ----------------------------------
  71. Thu Dec 27 04:05:06.789 2001 PST
  72. (1 row)
  73. -- should fail in mdy mode:
  74. SELECT timestamp with time zone '27/12/2001 04:05:06.789-08';
  75. ERROR: date/time field value out of range: "27/12/2001 04:05:06.789-08"
  76. LINE 1: SELECT timestamp with time zone '27/12/2001 04:05:06.789-08'...
  77. ^
  78. HINT: Perhaps you need a different "datestyle" setting.
  79. set datestyle to dmy;
  80. SELECT timestamp with time zone '27/12/2001 04:05:06.789-08';
  81. timestamptz
  82. ----------------------------------
  83. Thu 27 Dec 04:05:06.789 2001 PST
  84. (1 row)
  85. reset datestyle;
  86. SELECT timestamp with time zone 'Y2001M12D27H04M05S06.789+08';
  87. timestamptz
  88. ----------------------------------
  89. Wed Dec 26 12:05:06.789 2001 PST
  90. (1 row)
  91. SELECT timestamp with time zone 'Y2001M12D27H04M05S06.789-08';
  92. timestamptz
  93. ----------------------------------
  94. Thu Dec 27 04:05:06.789 2001 PST
  95. (1 row)
  96. SELECT timestamp with time zone 'Y2001M12D27H04MM05S06.789+08';
  97. timestamptz
  98. ----------------------------------
  99. Wed Dec 26 12:05:06.789 2001 PST
  100. (1 row)
  101. SELECT timestamp with time zone 'Y2001M12D27H04MM05S06.789-08';
  102. timestamptz
  103. ----------------------------------
  104. Thu Dec 27 04:05:06.789 2001 PST
  105. (1 row)
  106. SELECT timestamp with time zone 'J2452271+08';
  107. timestamptz
  108. ------------------------------
  109. Wed Dec 26 08:00:00 2001 PST
  110. (1 row)
  111. SELECT timestamp with time zone 'J2452271-08';
  112. timestamptz
  113. ------------------------------
  114. Thu Dec 27 00:00:00 2001 PST
  115. (1 row)
  116. SELECT timestamp with time zone 'J2452271.5+08';
  117. timestamptz
  118. ------------------------------
  119. Wed Dec 26 20:00:00 2001 PST
  120. (1 row)
  121. SELECT timestamp with time zone 'J2452271.5-08';
  122. timestamptz
  123. ------------------------------
  124. Thu Dec 27 12:00:00 2001 PST
  125. (1 row)
  126. SELECT timestamp with time zone 'J2452271 04:05:06+08';
  127. timestamptz
  128. ------------------------------
  129. Wed Dec 26 12:05:06 2001 PST
  130. (1 row)
  131. SELECT timestamp with time zone 'J2452271 04:05:06-08';
  132. timestamptz
  133. ------------------------------
  134. Thu Dec 27 04:05:06 2001 PST
  135. (1 row)
  136. SELECT timestamp with time zone 'J2452271T040506+08';
  137. timestamptz
  138. ------------------------------
  139. Wed Dec 26 12:05:06 2001 PST
  140. (1 row)
  141. SELECT timestamp with time zone 'J2452271T040506-08';
  142. timestamptz
  143. ------------------------------
  144. Thu Dec 27 04:05:06 2001 PST
  145. (1 row)
  146. SELECT timestamp with time zone 'J2452271T040506.789+08';
  147. timestamptz
  148. ----------------------------------
  149. Wed Dec 26 12:05:06.789 2001 PST
  150. (1 row)
  151. SELECT timestamp with time zone 'J2452271T040506.789-08';
  152. timestamptz
  153. ----------------------------------
  154. Thu Dec 27 04:05:06.789 2001 PST
  155. (1 row)
  156. -- German/European-style dates with periods as delimiters
  157. SELECT timestamp with time zone '12.27.2001 04:05:06.789+08';
  158. timestamptz
  159. ----------------------------------
  160. Wed Dec 26 12:05:06.789 2001 PST
  161. (1 row)
  162. SELECT timestamp with time zone '12.27.2001 04:05:06.789-08';
  163. timestamptz
  164. ----------------------------------
  165. Thu Dec 27 04:05:06.789 2001 PST
  166. (1 row)
  167. SET DateStyle = 'German';
  168. SELECT timestamp with time zone '27.12.2001 04:05:06.789+08';
  169. timestamptz
  170. -----------------------------
  171. 26.12.2001 12:05:06.789 PST
  172. (1 row)
  173. SELECT timestamp with time zone '27.12.2001 04:05:06.789-08';
  174. timestamptz
  175. -----------------------------
  176. 27.12.2001 04:05:06.789 PST
  177. (1 row)
  178. SET DateStyle = 'ISO';
  179. -- As of 7.4, allow time without time zone having a time zone specified
  180. SELECT time without time zone '040506.789+08';
  181. time
  182. --------------
  183. 04:05:06.789
  184. (1 row)
  185. SELECT time without time zone '040506.789-08';
  186. time
  187. --------------
  188. 04:05:06.789
  189. (1 row)
  190. SELECT time without time zone 'T040506.789+08';
  191. time
  192. --------------
  193. 04:05:06.789
  194. (1 row)
  195. SELECT time without time zone 'T040506.789-08';
  196. time
  197. --------------
  198. 04:05:06.789
  199. (1 row)
  200. SELECT time with time zone '040506.789+08';
  201. timetz
  202. -----------------
  203. 04:05:06.789+08
  204. (1 row)
  205. SELECT time with time zone '040506.789-08';
  206. timetz
  207. -----------------
  208. 04:05:06.789-08
  209. (1 row)
  210. SELECT time with time zone 'T040506.789+08';
  211. timetz
  212. -----------------
  213. 04:05:06.789+08
  214. (1 row)
  215. SELECT time with time zone 'T040506.789-08';
  216. timetz
  217. -----------------
  218. 04:05:06.789-08
  219. (1 row)
  220. SELECT time with time zone 'T040506.789 +08';
  221. timetz
  222. -----------------
  223. 04:05:06.789+08
  224. (1 row)
  225. SELECT time with time zone 'T040506.789 -08';
  226. timetz
  227. -----------------
  228. 04:05:06.789-08
  229. (1 row)
  230. SET DateStyle = 'Postgres, MDY';
  231. -- Check Julian dates BC
  232. SELECT date 'J1520447' AS "Confucius' Birthday";
  233. Confucius' Birthday
  234. ---------------------
  235. 09-28-0551 BC
  236. (1 row)
  237. SELECT date 'J0' AS "Julian Epoch";
  238. Julian Epoch
  239. ---------------
  240. 11-24-4714 BC
  241. (1 row)
  242. --
  243. -- date, time arithmetic
  244. --
  245. SELECT date '1981-02-03' + time '04:05:06' AS "Date + Time";
  246. Date + Time
  247. --------------------------
  248. Tue Feb 03 04:05:06 1981
  249. (1 row)
  250. SELECT date '1991-02-03' + time with time zone '04:05:06 PST' AS "Date + Time PST";
  251. Date + Time PST
  252. ------------------------------
  253. Sun Feb 03 04:05:06 1991 PST
  254. (1 row)
  255. SELECT date '2001-02-03' + time with time zone '04:05:06 UTC' AS "Date + Time UTC";
  256. Date + Time UTC
  257. ------------------------------
  258. Fri Feb 02 20:05:06 2001 PST
  259. (1 row)
  260. SELECT date '1991-02-03' + interval '2 years' AS "Add Two Years";
  261. Add Two Years
  262. --------------------------
  263. Wed Feb 03 00:00:00 1993
  264. (1 row)
  265. SELECT date '2001-12-13' - interval '2 years' AS "Subtract Two Years";
  266. Subtract Two Years
  267. --------------------------
  268. Mon Dec 13 00:00:00 1999
  269. (1 row)
  270. -- subtract time from date should not make sense; use interval instead
  271. SELECT date '1991-02-03' - time '04:05:06' AS "Subtract Time";
  272. Subtract Time
  273. --------------------------
  274. Sat Feb 02 19:54:54 1991
  275. (1 row)
  276. SELECT date '1991-02-03' - time with time zone '04:05:06 UTC' AS "Subtract Time UTC";
  277. ERROR: operator does not exist: date - time with time zone
  278. LINE 1: SELECT date '1991-02-03' - time with time zone '04:05:06 UTC...
  279. ^
  280. HINT: No operator matches the given name and argument types. You might need to add explicit type casts.
  281. --
  282. -- timestamp, interval arithmetic
  283. --
  284. SELECT timestamp without time zone '1996-03-01' - interval '1 second' AS "Feb 29";
  285. Feb 29
  286. --------------------------
  287. Thu Feb 29 23:59:59 1996
  288. (1 row)
  289. SELECT timestamp without time zone '1999-03-01' - interval '1 second' AS "Feb 28";
  290. Feb 28
  291. --------------------------
  292. Sun Feb 28 23:59:59 1999
  293. (1 row)
  294. SELECT timestamp without time zone '2000-03-01' - interval '1 second' AS "Feb 29";
  295. Feb 29
  296. --------------------------
  297. Tue Feb 29 23:59:59 2000
  298. (1 row)
  299. SELECT timestamp without time zone '1999-12-01' + interval '1 month - 1 second' AS "Dec 31";
  300. Dec 31
  301. --------------------------
  302. Fri Dec 31 23:59:59 1999
  303. (1 row)
  304. SELECT timestamp without time zone 'Jan 1, 4713 BC' + interval '106000000 days' AS "Feb 23, 285506";
  305. Feb 23, 285506
  306. ----------------------------
  307. Fri Feb 23 00:00:00 285506
  308. (1 row)
  309. SELECT timestamp without time zone 'Jan 1, 4713 BC' + interval '107000000 days' AS "Jan 20, 288244";
  310. Jan 20, 288244
  311. ----------------------------
  312. Sat Jan 20 00:00:00 288244
  313. (1 row)
  314. SELECT timestamp without time zone 'Jan 1, 4713 BC' + interval '109203489 days' AS "Dec 31, 294276";
  315. Dec 31, 294276
  316. ----------------------------
  317. Sun Dec 31 00:00:00 294276
  318. (1 row)
  319. SELECT timestamp without time zone '12/31/294276' - timestamp without time zone '12/23/1999' AS "106751991 Days";
  320. 106751991 Days
  321. ------------------
  322. @ 106751991 days
  323. (1 row)
  324. -- Shorthand values
  325. -- Not directly usable for regression testing since these are not constants.
  326. -- So, just try to test parser and hope for the best - thomas 97/04/26
  327. SELECT (timestamp without time zone 'today' = (timestamp without time zone 'yesterday' + interval '1 day')) as "True";
  328. True
  329. ------
  330. t
  331. (1 row)
  332. SELECT (timestamp without time zone 'today' = (timestamp without time zone 'tomorrow' - interval '1 day')) as "True";
  333. True
  334. ------
  335. t
  336. (1 row)
  337. SELECT (timestamp without time zone 'today 10:30' = (timestamp without time zone 'yesterday' + interval '1 day 10 hr 30 min')) as "True";
  338. True
  339. ------
  340. t
  341. (1 row)
  342. SELECT (timestamp without time zone '10:30 today' = (timestamp without time zone 'yesterday' + interval '1 day 10 hr 30 min')) as "True";
  343. True
  344. ------
  345. t
  346. (1 row)
  347. SELECT (timestamp without time zone 'tomorrow' = (timestamp without time zone 'yesterday' + interval '2 days')) as "True";
  348. True
  349. ------
  350. t
  351. (1 row)
  352. SELECT (timestamp without time zone 'tomorrow 16:00:00' = (timestamp without time zone 'today' + interval '1 day 16 hours')) as "True";
  353. True
  354. ------
  355. t
  356. (1 row)
  357. SELECT (timestamp without time zone '16:00:00 tomorrow' = (timestamp without time zone 'today' + interval '1 day 16 hours')) as "True";
  358. True
  359. ------
  360. t
  361. (1 row)
  362. SELECT (timestamp without time zone 'yesterday 12:34:56' = (timestamp without time zone 'tomorrow' - interval '2 days - 12:34:56')) as "True";
  363. True
  364. ------
  365. t
  366. (1 row)
  367. SELECT (timestamp without time zone '12:34:56 yesterday' = (timestamp without time zone 'tomorrow' - interval '2 days - 12:34:56')) as "True";
  368. True
  369. ------
  370. t
  371. (1 row)
  372. SELECT (timestamp without time zone 'tomorrow' > 'now') as "True";
  373. True
  374. ------
  375. t
  376. (1 row)
  377. -- Convert from date and time to timestamp
  378. -- This test used to be timestamp(date,time) but no longer allowed by grammar
  379. -- to enable support for SQL99 timestamp type syntax.
  380. SELECT date '1994-01-01' + time '11:00' AS "Jan_01_1994_11am";
  381. Jan_01_1994_11am
  382. --------------------------
  383. Sat Jan 01 11:00:00 1994
  384. (1 row)
  385. SELECT date '1994-01-01' + time '10:00' AS "Jan_01_1994_10am";
  386. Jan_01_1994_10am
  387. --------------------------
  388. Sat Jan 01 10:00:00 1994
  389. (1 row)
  390. SELECT date '1994-01-01' + timetz '11:00-5' AS "Jan_01_1994_8am";
  391. Jan_01_1994_8am
  392. ------------------------------
  393. Sat Jan 01 08:00:00 1994 PST
  394. (1 row)
  395. SELECT timestamptz(date '1994-01-01', time with time zone '11:00-5') AS "Jan_01_1994_8am";
  396. Jan_01_1994_8am
  397. ------------------------------
  398. Sat Jan 01 08:00:00 1994 PST
  399. (1 row)
  400. SELECT d1 + interval '1 year' AS one_year FROM TIMESTAMP_TBL;
  401. one_year
  402. -----------------------------
  403. -infinity
  404. infinity
  405. Fri Jan 01 00:00:00 1971
  406. Tue Feb 10 17:32:01 1998
  407. Tue Feb 10 17:32:01 1998
  408. Tue Feb 10 17:32:02 1998
  409. Tue Feb 10 17:32:01.4 1998
  410. Tue Feb 10 17:32:01.5 1998
  411. Tue Feb 10 17:32:01.6 1998
  412. Fri Jan 02 00:00:00 1998
  413. Fri Jan 02 03:04:05 1998
  414. Tue Feb 10 17:32:01 1998
  415. Tue Feb 10 17:32:01 1998
  416. Tue Feb 10 17:32:01 1998
  417. Tue Feb 10 17:32:01 1998
  418. Wed Jun 10 17:32:01 1998
  419. Sun Sep 22 18:19:20 2002
  420. Thu Mar 15 08:14:01 2001
  421. Thu Mar 15 13:14:02 2001
  422. Thu Mar 15 12:14:03 2001
  423. Thu Mar 15 03:14:04 2001
  424. Thu Mar 15 02:14:05 2001
  425. Tue Feb 10 17:32:01 1998
  426. Tue Feb 10 17:32:01 1998
  427. Tue Feb 10 17:32:00 1998
  428. Tue Feb 10 17:32:01 1998
  429. Tue Feb 10 17:32:01 1998
  430. Tue Feb 10 17:32:01 1998
  431. Tue Feb 10 17:32:01 1998
  432. Tue Feb 10 17:32:01 1998
  433. Tue Feb 10 17:32:01 1998
  434. Tue Feb 10 17:32:01 1998
  435. Tue Feb 10 17:32:01 1998
  436. Tue Feb 10 17:32:01 1998
  437. Wed Jun 10 18:32:01 1998
  438. Tue Feb 10 17:32:01 1998
  439. Wed Feb 11 17:32:01 1998
  440. Thu Feb 12 17:32:01 1998
  441. Fri Feb 13 17:32:01 1998
  442. Sat Feb 14 17:32:01 1998
  443. Sun Feb 15 17:32:01 1998
  444. Mon Feb 16 17:32:01 1998
  445. Thu Feb 16 17:32:01 0096 BC
  446. Sun Feb 16 17:32:01 0098
  447. Fri Feb 16 17:32:01 0598
  448. Wed Feb 16 17:32:01 1098
  449. Sun Feb 16 17:32:01 1698
  450. Fri Feb 16 17:32:01 1798
  451. Wed Feb 16 17:32:01 1898
  452. Mon Feb 16 17:32:01 1998
  453. Sun Feb 16 17:32:01 2098
  454. Fri Feb 28 17:32:01 1997
  455. Fri Feb 28 17:32:01 1997
  456. Sat Mar 01 17:32:01 1997
  457. Tue Dec 30 17:32:01 1997
  458. Wed Dec 31 17:32:01 1997
  459. Thu Jan 01 17:32:01 1998
  460. Sat Feb 28 17:32:01 1998
  461. Sun Mar 01 17:32:01 1998
  462. Wed Dec 30 17:32:01 1998
  463. Thu Dec 31 17:32:01 1998
  464. Sun Dec 31 17:32:01 2000
  465. Mon Jan 01 17:32:01 2001
  466. Mon Dec 31 17:32:01 2001
  467. Tue Jan 01 17:32:01 2002
  468. (65 rows)
  469. SELECT d1 - interval '1 year' AS one_year FROM TIMESTAMP_TBL;
  470. one_year
  471. -----------------------------
  472. -infinity
  473. infinity
  474. Wed Jan 01 00:00:00 1969
  475. Sat Feb 10 17:32:01 1996
  476. Sat Feb 10 17:32:01 1996
  477. Sat Feb 10 17:32:02 1996
  478. Sat Feb 10 17:32:01.4 1996
  479. Sat Feb 10 17:32:01.5 1996
  480. Sat Feb 10 17:32:01.6 1996
  481. Tue Jan 02 00:00:00 1996
  482. Tue Jan 02 03:04:05 1996
  483. Sat Feb 10 17:32:01 1996
  484. Sat Feb 10 17:32:01 1996
  485. Sat Feb 10 17:32:01 1996
  486. Sat Feb 10 17:32:01 1996
  487. Mon Jun 10 17:32:01 1996
  488. Fri Sep 22 18:19:20 2000
  489. Mon Mar 15 08:14:01 1999
  490. Mon Mar 15 13:14:02 1999
  491. Mon Mar 15 12:14:03 1999
  492. Mon Mar 15 03:14:04 1999
  493. Mon Mar 15 02:14:05 1999
  494. Sat Feb 10 17:32:01 1996
  495. Sat Feb 10 17:32:01 1996
  496. Sat Feb 10 17:32:00 1996
  497. Sat Feb 10 17:32:01 1996
  498. Sat Feb 10 17:32:01 1996
  499. Sat Feb 10 17:32:01 1996
  500. Sat Feb 10 17:32:01 1996
  501. Sat Feb 10 17:32:01 1996
  502. Sat Feb 10 17:32:01 1996
  503. Sat Feb 10 17:32:01 1996
  504. Sat Feb 10 17:32:01 1996
  505. Sat Feb 10 17:32:01 1996
  506. Mon Jun 10 18:32:01 1996
  507. Sat Feb 10 17:32:01 1996
  508. Sun Feb 11 17:32:01 1996
  509. Mon Feb 12 17:32:01 1996
  510. Tue Feb 13 17:32:01 1996
  511. Wed Feb 14 17:32:01 1996
  512. Thu Feb 15 17:32:01 1996
  513. Fri Feb 16 17:32:01 1996
  514. Mon Feb 16 17:32:01 0098 BC
  515. Thu Feb 16 17:32:01 0096
  516. Tue Feb 16 17:32:01 0596
  517. Sun Feb 16 17:32:01 1096
  518. Thu Feb 16 17:32:01 1696
  519. Tue Feb 16 17:32:01 1796
  520. Sun Feb 16 17:32:01 1896
  521. Fri Feb 16 17:32:01 1996
  522. Thu Feb 16 17:32:01 2096
  523. Tue Feb 28 17:32:01 1995
  524. Tue Feb 28 17:32:01 1995
  525. Wed Mar 01 17:32:01 1995
  526. Sat Dec 30 17:32:01 1995
  527. Sun Dec 31 17:32:01 1995
  528. Mon Jan 01 17:32:01 1996
  529. Wed Feb 28 17:32:01 1996
  530. Fri Mar 01 17:32:01 1996
  531. Mon Dec 30 17:32:01 1996
  532. Tue Dec 31 17:32:01 1996
  533. Thu Dec 31 17:32:01 1998
  534. Fri Jan 01 17:32:01 1999
  535. Fri Dec 31 17:32:01 1999
  536. Sat Jan 01 17:32:01 2000
  537. (65 rows)
  538. SELECT timestamp with time zone '1996-03-01' - interval '1 second' AS "Feb 29";
  539. Feb 29
  540. ------------------------------
  541. Thu Feb 29 23:59:59 1996 PST
  542. (1 row)
  543. SELECT timestamp with time zone '1999-03-01' - interval '1 second' AS "Feb 28";
  544. Feb 28
  545. ------------------------------
  546. Sun Feb 28 23:59:59 1999 PST
  547. (1 row)
  548. SELECT timestamp with time zone '2000-03-01' - interval '1 second' AS "Feb 29";
  549. Feb 29
  550. ------------------------------
  551. Tue Feb 29 23:59:59 2000 PST
  552. (1 row)
  553. SELECT timestamp with time zone '1999-12-01' + interval '1 month - 1 second' AS "Dec 31";
  554. Dec 31
  555. ------------------------------
  556. Fri Dec 31 23:59:59 1999 PST
  557. (1 row)
  558. SELECT (timestamp with time zone 'today' = (timestamp with time zone 'yesterday' + interval '1 day')) as "True";
  559. True
  560. ------
  561. t
  562. (1 row)
  563. SELECT (timestamp with time zone 'today' = (timestamp with time zone 'tomorrow' - interval '1 day')) as "True";
  564. True
  565. ------
  566. t
  567. (1 row)
  568. SELECT (timestamp with time zone 'tomorrow' = (timestamp with time zone 'yesterday' + interval '2 days')) as "True";
  569. True
  570. ------
  571. t
  572. (1 row)
  573. SELECT (timestamp with time zone 'tomorrow' > 'now') as "True";
  574. True
  575. ------
  576. t
  577. (1 row)
  578. -- timestamp with time zone, interval arithmetic around DST change
  579. -- (just for fun, let's use an intentionally nonstandard POSIX zone spec)
  580. SET TIME ZONE 'CST7CDT,M4.1.0,M10.5.0';
  581. SELECT timestamp with time zone '2005-04-02 12:00-07' + interval '1 day' as "Apr 3, 12:00";
  582. Apr 3, 12:00
  583. ------------------------------
  584. Sun Apr 03 12:00:00 2005 CDT
  585. (1 row)
  586. SELECT timestamp with time zone '2005-04-02 12:00-07' + interval '24 hours' as "Apr 3, 13:00";
  587. Apr 3, 13:00
  588. ------------------------------
  589. Sun Apr 03 13:00:00 2005 CDT
  590. (1 row)
  591. SELECT timestamp with time zone '2005-04-03 12:00-06' - interval '1 day' as "Apr 2, 12:00";
  592. Apr 2, 12:00
  593. ------------------------------
  594. Sat Apr 02 12:00:00 2005 CST
  595. (1 row)
  596. SELECT timestamp with time zone '2005-04-03 12:00-06' - interval '24 hours' as "Apr 2, 11:00";
  597. Apr 2, 11:00
  598. ------------------------------
  599. Sat Apr 02 11:00:00 2005 CST
  600. (1 row)
  601. RESET TIME ZONE;
  602. SELECT timestamptz(date '1994-01-01', time '11:00') AS "Jan_01_1994_10am";
  603. Jan_01_1994_10am
  604. ------------------------------
  605. Sat Jan 01 11:00:00 1994 PST
  606. (1 row)
  607. SELECT timestamptz(date '1994-01-01', time '10:00') AS "Jan_01_1994_9am";
  608. Jan_01_1994_9am
  609. ------------------------------
  610. Sat Jan 01 10:00:00 1994 PST
  611. (1 row)
  612. SELECT timestamptz(date '1994-01-01', time with time zone '11:00-8') AS "Jan_01_1994_11am";
  613. Jan_01_1994_11am
  614. ------------------------------
  615. Sat Jan 01 11:00:00 1994 PST
  616. (1 row)
  617. SELECT timestamptz(date '1994-01-01', time with time zone '10:00-8') AS "Jan_01_1994_10am";
  618. Jan_01_1994_10am
  619. ------------------------------
  620. Sat Jan 01 10:00:00 1994 PST
  621. (1 row)
  622. SELECT timestamptz(date '1994-01-01', time with time zone '11:00-5') AS "Jan_01_1994_8am";
  623. Jan_01_1994_8am
  624. ------------------------------
  625. Sat Jan 01 08:00:00 1994 PST
  626. (1 row)
  627. SELECT d1 + interval '1 year' AS one_year FROM TIMESTAMPTZ_TBL;
  628. one_year
  629. ---------------------------------
  630. -infinity
  631. infinity
  632. Thu Dec 31 16:00:00 1970 PST
  633. Tue Feb 10 17:32:01 1998 PST
  634. Tue Feb 10 17:32:01 1998 PST
  635. Tue Feb 10 17:32:02 1998 PST
  636. Tue Feb 10 17:32:01.4 1998 PST
  637. Tue Feb 10 17:32:01.5 1998 PST
  638. Tue Feb 10 17:32:01.6 1998 PST
  639. Fri Jan 02 00:00:00 1998 PST
  640. Fri Jan 02 03:04:05 1998 PST
  641. Tue Feb 10 17:32:01 1998 PST
  642. Tue Feb 10 17:32:01 1998 PST
  643. Tue Feb 10 17:32:01 1998 PST
  644. Tue Feb 10 17:32:01 1998 PST
  645. Wed Jun 10 17:32:01 1998 PDT
  646. Sun Sep 22 18:19:20 2002 PDT
  647. Thu Mar 15 08:14:01 2001 PST
  648. Thu Mar 15 04:14:02 2001 PST
  649. Thu Mar 15 02:14:03 2001 PST
  650. Thu Mar 15 03:14:04 2001 PST
  651. Thu Mar 15 01:14:05 2001 PST
  652. Tue Feb 10 17:32:01 1998 PST
  653. Tue Feb 10 17:32:01 1998 PST
  654. Tue Feb 10 17:32:00 1998 PST
  655. Tue Feb 10 17:32:01 1998 PST
  656. Tue Feb 10 17:32:01 1998 PST
  657. Tue Feb 10 17:32:01 1998 PST
  658. Tue Feb 10 17:32:01 1998 PST
  659. Tue Feb 10 17:32:01 1998 PST
  660. Tue Feb 10 09:32:01 1998 PST
  661. Tue Feb 10 09:32:01 1998 PST
  662. Tue Feb 10 09:32:01 1998 PST
  663. Tue Feb 10 14:32:01 1998 PST
  664. Fri Jul 10 14:32:01 1998 PDT
  665. Wed Jun 10 18:32:01 1998 PDT
  666. Tue Feb 10 17:32:01 1998 PST
  667. Wed Feb 11 17:32:01 1998 PST
  668. Thu Feb 12 17:32:01 1998 PST
  669. Fri Feb 13 17:32:01 1998 PST
  670. Sat Feb 14 17:32:01 1998 PST
  671. Sun Feb 15 17:32:01 1998 PST
  672. Mon Feb 16 17:32:01 1998 PST
  673. Thu Feb 16 17:32:01 0096 PST BC
  674. Sun Feb 16 17:32:01 0098 PST
  675. Fri Feb 16 17:32:01 0598 PST
  676. Wed Feb 16 17:32:01 1098 PST
  677. Sun Feb 16 17:32:01 1698 PST
  678. Fri Feb 16 17:32:01 1798 PST
  679. Wed Feb 16 17:32:01 1898 PST
  680. Mon Feb 16 17:32:01 1998 PST
  681. Sun Feb 16 17:32:01 2098 PST
  682. Fri Feb 28 17:32:01 1997 PST
  683. Fri Feb 28 17:32:01 1997 PST
  684. Sat Mar 01 17:32:01 1997 PST
  685. Tue Dec 30 17:32:01 1997 PST
  686. Wed Dec 31 17:32:01 1997 PST
  687. Thu Jan 01 17:32:01 1998 PST
  688. Sat Feb 28 17:32:01 1998 PST
  689. Sun Mar 01 17:32:01 1998 PST
  690. Wed Dec 30 17:32:01 1998 PST
  691. Thu Dec 31 17:32:01 1998 PST
  692. Sun Dec 31 17:32:01 2000 PST
  693. Mon Jan 01 17:32:01 2001 PST
  694. Mon Dec 31 17:32:01 2001 PST
  695. Tue Jan 01 17:32:01 2002 PST
  696. (66 rows)
  697. SELECT d1 - interval '1 year' AS one_year FROM TIMESTAMPTZ_TBL;
  698. one_year
  699. ---------------------------------
  700. -infinity
  701. infinity
  702. Tue Dec 31 16:00:00 1968 PST
  703. Sat Feb 10 17:32:01 1996 PST
  704. Sat Feb 10 17:32:01 1996 PST
  705. Sat Feb 10 17:32:02 1996 PST
  706. Sat Feb 10 17:32:01.4 1996 PST
  707. Sat Feb 10 17:32:01.5 1996 PST
  708. Sat Feb 10 17:32:01.6 1996 PST
  709. Tue Jan 02 00:00:00 1996 PST
  710. Tue Jan 02 03:04:05 1996 PST
  711. Sat Feb 10 17:32:01 1996 PST
  712. Sat Feb 10 17:32:01 1996 PST
  713. Sat Feb 10 17:32:01 1996 PST
  714. Sat Feb 10 17:32:01 1996 PST
  715. Mon Jun 10 17:32:01 1996 PDT
  716. Fri Sep 22 18:19:20 2000 PDT
  717. Mon Mar 15 08:14:01 1999 PST
  718. Mon Mar 15 04:14:02 1999 PST
  719. Mon Mar 15 02:14:03 1999 PST
  720. Mon Mar 15 03:14:04 1999 PST
  721. Mon Mar 15 01:14:05 1999 PST
  722. Sat Feb 10 17:32:01 1996 PST
  723. Sat Feb 10 17:32:01 1996 PST
  724. Sat Feb 10 17:32:00 1996 PST
  725. Sat Feb 10 17:32:01 1996 PST
  726. Sat Feb 10 17:32:01 1996 PST
  727. Sat Feb 10 17:32:01 1996 PST
  728. Sat Feb 10 17:32:01 1996 PST
  729. Sat Feb 10 17:32:01 1996 PST
  730. Sat Feb 10 09:32:01 1996 PST
  731. Sat Feb 10 09:32:01 1996 PST
  732. Sat Feb 10 09:32:01 1996 PST
  733. Sat Feb 10 14:32:01 1996 PST
  734. Wed Jul 10 14:32:01 1996 PDT
  735. Mon Jun 10 18:32:01 1996 PDT
  736. Sat Feb 10 17:32:01 1996 PST
  737. Sun Feb 11 17:32:01 1996 PST
  738. Mon Feb 12 17:32:01 1996 PST
  739. Tue Feb 13 17:32:01 1996 PST
  740. Wed Feb 14 17:32:01 1996 PST
  741. Thu Feb 15 17:32:01 1996 PST
  742. Fri Feb 16 17:32:01 1996 PST
  743. Mon Feb 16 17:32:01 0098 PST BC
  744. Thu Feb 16 17:32:01 0096 PST
  745. Tue Feb 16 17:32:01 0596 PST
  746. Sun Feb 16 17:32:01 1096 PST
  747. Thu Feb 16 17:32:01 1696 PST
  748. Tue Feb 16 17:32:01 1796 PST
  749. Sun Feb 16 17:32:01 1896 PST
  750. Fri Feb 16 17:32:01 1996 PST
  751. Thu Feb 16 17:32:01 2096 PST
  752. Tue Feb 28 17:32:01 1995 PST
  753. Tue Feb 28 17:32:01 1995 PST
  754. Wed Mar 01 17:32:01 1995 PST
  755. Sat Dec 30 17:32:01 1995 PST
  756. Sun Dec 31 17:32:01 1995 PST
  757. Mon Jan 01 17:32:01 1996 PST
  758. Wed Feb 28 17:32:01 1996 PST
  759. Fri Mar 01 17:32:01 1996 PST
  760. Mon Dec 30 17:32:01 1996 PST
  761. Tue Dec 31 17:32:01 1996 PST
  762. Thu Dec 31 17:32:01 1998 PST
  763. Fri Jan 01 17:32:01 1999 PST
  764. Fri Dec 31 17:32:01 1999 PST
  765. Sat Jan 01 17:32:01 2000 PST
  766. (66 rows)
  767. --
  768. -- time, interval arithmetic
  769. --
  770. SELECT CAST(time '01:02' AS interval) AS "+01:02";
  771. +01:02
  772. -----------------
  773. @ 1 hour 2 mins
  774. (1 row)
  775. SELECT CAST(interval '02:03' AS time) AS "02:03:00";
  776. 02:03:00
  777. ----------
  778. 02:03:00
  779. (1 row)
  780. SELECT time '01:30' + interval '02:01' AS "03:31:00";
  781. 03:31:00
  782. ----------
  783. 03:31:00
  784. (1 row)
  785. SELECT time '01:30' - interval '02:01' AS "23:29:00";
  786. 23:29:00
  787. ----------
  788. 23:29:00
  789. (1 row)
  790. SELECT time '02:30' + interval '36:01' AS "14:31:00";
  791. 14:31:00
  792. ----------
  793. 14:31:00
  794. (1 row)
  795. SELECT time '03:30' + interval '1 month 04:01' AS "07:31:00";
  796. 07:31:00
  797. ----------
  798. 07:31:00
  799. (1 row)
  800. SELECT CAST(time with time zone '01:02-08' AS interval) AS "+00:01";
  801. ERROR: cannot cast type time with time zone to interval
  802. LINE 1: SELECT CAST(time with time zone '01:02-08' AS interval) AS "...
  803. ^
  804. SELECT CAST(interval '02:03' AS time with time zone) AS "02:03:00-08";
  805. ERROR: cannot cast type interval to time with time zone
  806. LINE 1: SELECT CAST(interval '02:03' AS time with time zone) AS "02:...
  807. ^
  808. SELECT time with time zone '01:30-08' - interval '02:01' AS "23:29:00-08";
  809. 23:29:00-08
  810. -------------
  811. 23:29:00-08
  812. (1 row)
  813. SELECT time with time zone '02:30-08' + interval '36:01' AS "14:31:00-08";
  814. 14:31:00-08
  815. -------------
  816. 14:31:00-08
  817. (1 row)
  818. -- These two tests cannot be used because they default to current timezone,
  819. -- which may be either -08 or -07 depending on the time of year.
  820. -- SELECT time with time zone '01:30' + interval '02:01' AS "03:31:00-08";
  821. -- SELECT time with time zone '03:30' + interval '1 month 04:01' AS "07:31:00-08";
  822. -- Try the following two tests instead, as a poor substitute
  823. SELECT CAST(CAST(date 'today' + time with time zone '05:30'
  824. + interval '02:01' AS time with time zone) AS time) AS "07:31:00";
  825. 07:31:00
  826. ----------
  827. 07:31:00
  828. (1 row)
  829. SELECT CAST(cast(date 'today' + time with time zone '03:30'
  830. + interval '1 month 04:01' as timestamp without time zone) AS time) AS "07:31:00";
  831. 07:31:00
  832. ----------
  833. 07:31:00
  834. (1 row)
  835. SELECT t.d1 AS t, i.f1 AS i, t.d1 + i.f1 AS "add", t.d1 - i.f1 AS "subtract"
  836. FROM TIMESTAMP_TBL t, INTERVAL_TBL i
  837. WHERE t.d1 BETWEEN '1990-01-01' AND '2001-01-01'
  838. AND i.f1 BETWEEN '00:00' AND '23:00'
  839. ORDER BY 1,2;
  840. t | i | add | subtract
  841. ----------------------------+-----------+----------------------------+----------------------------
  842. Wed Feb 28 17:32:01 1996 | @ 1 min | Wed Feb 28 17:33:01 1996 | Wed Feb 28 17:31:01 1996
  843. Wed Feb 28 17:32:01 1996 | @ 5 hours | Wed Feb 28 22:32:01 1996 | Wed Feb 28 12:32:01 1996
  844. Thu Feb 29 17:32:01 1996 | @ 1 min | Thu Feb 29 17:33:01 1996 | Thu Feb 29 17:31:01 1996
  845. Thu Feb 29 17:32:01 1996 | @ 5 hours | Thu Feb 29 22:32:01 1996 | Thu Feb 29 12:32:01 1996
  846. Fri Mar 01 17:32:01 1996 | @ 1 min | Fri Mar 01 17:33:01 1996 | Fri Mar 01 17:31:01 1996
  847. Fri Mar 01 17:32:01 1996 | @ 5 hours | Fri Mar 01 22:32:01 1996 | Fri Mar 01 12:32:01 1996
  848. Mon Dec 30 17:32:01 1996 | @ 1 min | Mon Dec 30 17:33:01 1996 | Mon Dec 30 17:31:01 1996
  849. Mon Dec 30 17:32:01 1996 | @ 5 hours | Mon Dec 30 22:32:01 1996 | Mon Dec 30 12:32:01 1996
  850. Tue Dec 31 17:32:01 1996 | @ 1 min | Tue Dec 31 17:33:01 1996 | Tue Dec 31 17:31:01 1996
  851. Tue Dec 31 17:32:01 1996 | @ 5 hours | Tue Dec 31 22:32:01 1996 | Tue Dec 31 12:32:01 1996
  852. Wed Jan 01 17:32:01 1997 | @ 1 min | Wed Jan 01 17:33:01 1997 | Wed Jan 01 17:31:01 1997
  853. Wed Jan 01 17:32:01 1997 | @ 5 hours | Wed Jan 01 22:32:01 1997 | Wed Jan 01 12:32:01 1997
  854. Thu Jan 02 00:00:00 1997 | @ 1 min | Thu Jan 02 00:01:00 1997 | Wed Jan 01 23:59:00 1997
  855. Thu Jan 02 00:00:00 1997 | @ 5 hours | Thu Jan 02 05:00:00 1997 | Wed Jan 01 19:00:00 1997
  856. Thu Jan 02 03:04:05 1997 | @ 1 min | Thu Jan 02 03:05:05 1997 | Thu Jan 02 03:03:05 1997
  857. Thu Jan 02 03:04:05 1997 | @ 5 hours | Thu Jan 02 08:04:05 1997 | Wed Jan 01 22:04:05 1997
  858. Mon Feb 10 17:32:00 1997 | @ 1 min | Mon Feb 10 17:33:00 1997 | Mon Feb 10 17:31:00 1997
  859. Mon Feb 10 17:32:00 1997 | @ 5 hours | Mon Feb 10 22:32:00 1997 | Mon Feb 10 12:32:00 1997
  860. Mon Feb 10 17:32:01 1997 | @ 1 min | Mon Feb 10 17:33:01 1997 | Mon Feb 10 17:31:01 1997
  861. Mon Feb 10 17:32:01 1997 | @ 1 min | Mon Feb 10 17:33:01 1997 | Mon Feb 10 17:31:01 1997
  862. Mon Feb 10 17:32:01 1997 | @ 1 min | Mon Feb 10 17:33:01 1997 | Mon Feb 10 17:31:01 1997
  863. Mon Feb 10 17:32:01 1997 | @ 1 min | Mon Feb 10 17:33:01 1997 | Mon Feb 10 17:31:01 1997
  864. Mon Feb 10 17:32:01 1997 | @ 1 min | Mon Feb 10 17:33:01 1997 | Mon Feb 10 17:31:01 1997
  865. Mon Feb 10 17:32:01 1997 | @ 1 min | Mon Feb 10 17:33:01 1997 | Mon Feb 10 17:31:01 1997
  866. Mon Feb 10 17:32:01 1997 | @ 1 min | Mon Feb 10 17:33:01 1997 | Mon Feb 10 17:31:01 1997
  867. Mon Feb 10 17:32:01 1997 | @ 1 min | Mon Feb 10 17:33:01 1997 | Mon Feb 10 17:31:01 1997
  868. Mon Feb 10 17:32:01 1997 | @ 1 min | Mon Feb 10 17:33:01 1997 | Mon Feb 10 17:31:01 1997
  869. Mon Feb 10 17:32:01 1997 | @ 1 min | Mon Feb 10 17:33:01 1997 | Mon Feb 10 17:31:01 1997
  870. Mon Feb 10 17:32:01 1997 | @ 1 min | Mon Feb 10 17:33:01 1997 | Mon Feb 10 17:31:01 1997
  871. Mon Feb 10 17:32:01 1997 | @ 1 min | Mon Feb 10 17:33:01 1997 | Mon Feb 10 17:31:01 1997
  872. Mon Feb 10 17:32:01 1997 | @ 1 min | Mon Feb 10 17:33:01 1997 | Mon Feb 10 17:31:01 1997
  873. Mon Feb 10 17:32:01 1997 | @ 1 min | Mon Feb 10 17:33:01 1997 | Mon Feb 10 17:31:01 1997
  874. Mon Feb 10 17:32:01 1997 | @ 1 min | Mon Feb 10 17:33:01 1997 | Mon Feb 10 17:31:01 1997
  875. Mon Feb 10 17:32:01 1997 | @ 1 min | Mon Feb 10 17:33:01 1997 | Mon Feb 10 17:31:01 1997
  876. Mon Feb 10 17:32:01 1997 | @ 1 min | Mon Feb 10 17:33:01 1997 | Mon Feb 10 17:31:01 1997
  877. Mon Feb 10 17:32:01 1997 | @ 1 min | Mon Feb 10 17:33:01 1997 | Mon Feb 10 17:31:01 1997
  878. Mon Feb 10 17:32:01 1997 | @ 5 hours | Mon Feb 10 22:32:01 1997 | Mon Feb 10 12:32:01 1997
  879. Mon Feb 10 17:32:01 1997 | @ 5 hours | Mon Feb 10 22:32:01 1997 | Mon Feb 10 12:32:01 1997
  880. Mon Feb 10 17:32:01 1997 | @ 5 hours | Mon Feb 10 22:32:01 1997 | Mon Feb 10 12:32:01 1997
  881. Mon Feb 10 17:32:01 1997 | @ 5 hours | Mon Feb 10 22:32:01 1997 | Mon Feb 10 12:32:01 1997
  882. Mon Feb 10 17:32:01 1997 | @ 5 hours | Mon Feb 10 22:32:01 1997 | Mon Feb 10 12:32:01 1997
  883. Mon Feb 10 17:32:01 1997 | @ 5 hours | Mon Feb 10 22:32:01 1997 | Mon Feb 10 12:32:01 1997
  884. Mon Feb 10 17:32:01 1997 | @ 5 hours | Mon Feb 10 22:32:01 1997 | Mon Feb 10 12:32:01 1997
  885. Mon Feb 10 17:32:01 1997 | @ 5 hours | Mon Feb 10 22:32:01 1997 | Mon Feb 10 12:32:01 1997
  886. Mon Feb 10 17:32:01 1997 | @ 5 hours | Mon Feb 10 22:32:01 1997 | Mon Feb 10 12:32:01 1997
  887. Mon Feb 10 17:32:01 1997 | @ 5 hours | Mon Feb 10 22:32:01 1997 | Mon Feb 10 12:32:01 1997
  888. Mon Feb 10 17:32:01 1997 | @ 5 hours | Mon Feb 10 22:32:01 1997 | Mon Feb 10 12:32:01 1997
  889. Mon Feb 10 17:32:01 1997 | @ 5 hours | Mon Feb 10 22:32:01 1997 | Mon Feb 10 12:32:01 1997
  890. Mon Feb 10 17:32:01 1997 | @ 5 hours | Mon Feb 10 22:32:01 1997 | Mon Feb 10 12:32:01 1997
  891. Mon Feb 10 17:32:01 1997 | @ 5 hours | Mon Feb 10 22:32:01 1997 | Mon Feb 10 12:32:01 1997
  892. Mon Feb 10 17:32:01 1997 | @ 5 hours | Mon Feb 10 22:32:01 1997 | Mon Feb 10 12:32:01 1997
  893. Mon Feb 10 17:32:01 1997 | @ 5 hours | Mon Feb 10 22:32:01 1997 | Mon Feb 10 12:32:01 1997
  894. Mon Feb 10 17:32:01 1997 | @ 5 hours | Mon Feb 10 22:32:01 1997 | Mon Feb 10 12:32:01 1997
  895. Mon Feb 10 17:32:01 1997 | @ 5 hours | Mon Feb 10 22:32:01 1997 | Mon Feb 10 12:32:01 1997
  896. Mon Feb 10 17:32:01.4 1997 | @ 1 min | Mon Feb 10 17:33:01.4 1997 | Mon Feb 10 17:31:01.4 1997
  897. Mon Feb 10 17:32:01.4 1997 | @ 5 hours | Mon Feb 10 22:32:01.4 1997 | Mon Feb 10 12:32:01.4 1997
  898. Mon Feb 10 17:32:01.5 1997 | @ 1 min | Mon Feb 10 17:33:01.5 1997 | Mon Feb 10 17:31:01.5 1997
  899. Mon Feb 10 17:32:01.5 1997 | @ 5 hours | Mon Feb 10 22:32:01.5 1997 | Mon Feb 10 12:32:01.5 1997
  900. Mon Feb 10 17:32:01.6 1997 | @ 1 min | Mon Feb 10 17:33:01.6 1997 | Mon Feb 10 17:31:01.6 1997
  901. Mon Feb 10 17:32:01.6 1997 | @ 5 hours | Mon Feb 10 22:32:01.6 1997 | Mon Feb 10 12:32:01.6 1997
  902. Mon Feb 10 17:32:02 1997 | @ 1 min | Mon Feb 10 17:33:02 1997 | Mon Feb 10 17:31:02 1997
  903. Mon Feb 10 17:32:02 1997 | @ 5 hours | Mon Feb 10 22:32:02 1997 | Mon Feb 10 12:32:02 1997
  904. Tue Feb 11 17:32:01 1997 | @ 1 min | Tue Feb 11 17:33:01 1997 | Tue Feb 11 17:31:01 1997
  905. Tue Feb 11 17:32:01 1997 | @ 5 hours | Tue Feb 11 22:32:01 1997 | Tue Feb 11 12:32:01 1997
  906. Wed Feb 12 17:32:01 1997 | @ 1 min | Wed Feb 12 17:33:01 1997 | Wed Feb 12 17:31:01 1997
  907. Wed Feb 12 17:32:01 1997 | @ 5 hours | Wed Feb 12 22:32:01 1997 | Wed Feb 12 12:32:01 1997
  908. Thu Feb 13 17:32:01 1997 | @ 1 min | Thu Feb 13 17:33:01 1997 | Thu Feb 13 17:31:01 1997
  909. Thu Feb 13 17:32:01 1997 | @ 5 hours | Thu Feb 13 22:32:01 1997 | Thu Feb 13 12:32:01 1997
  910. Fri Feb 14 17:32:01 1997 | @ 1 min | Fri Feb 14 17:33:01 1997 | Fri Feb 14 17:31:01 1997
  911. Fri Feb 14 17:32:01 1997 | @ 5 hours | Fri Feb 14 22:32:01 1997 | Fri Feb 14 12:32:01 1997
  912. Sat Feb 15 17:32:01 1997 | @ 1 min | Sat Feb 15 17:33:01 1997 | Sat Feb 15 17:31:01 1997
  913. Sat Feb 15 17:32:01 1997 | @ 5 hours | Sat Feb 15 22:32:01 1997 | Sat Feb 15 12:32:01 1997
  914. Sun Feb 16 17:32:01 1997 | @ 1 min | Sun Feb 16 17:33:01 1997 | Sun Feb 16 17:31:01 1997
  915. Sun Feb 16 17:32:01 1997 | @ 1 min | Sun Feb 16 17:33:01 1997 | Sun Feb 16 17:31:01 1997
  916. Sun Feb 16 17:32:01 1997 | @ 5 hours | Sun Feb 16 22:32:01 1997 | Sun Feb 16 12:32:01 1997
  917. Sun Feb 16 17:32:01 1997 | @ 5 hours | Sun Feb 16 22:32:01 1997 | Sun Feb 16 12:32:01 1997
  918. Fri Feb 28 17:32:01 1997 | @ 1 min | Fri Feb 28 17:33:01 1997 | Fri Feb 28 17:31:01 1997
  919. Fri Feb 28 17:32:01 1997 | @ 5 hours | Fri Feb 28 22:32:01 1997 | Fri Feb 28 12:32:01 1997
  920. Sat Mar 01 17:32:01 1997 | @ 1 min | Sat Mar 01 17:33:01 1997 | Sat Mar 01 17:31:01 1997
  921. Sat Mar 01 17:32:01 1997 | @ 5 hours | Sat Mar 01 22:32:01 1997 | Sat Mar 01 12:32:01 1997
  922. Tue Jun 10 17:32:01 1997 | @ 1 min | Tue Jun 10 17:33:01 1997 | Tue Jun 10 17:31:01 1997
  923. Tue Jun 10 17:32:01 1997 | @ 5 hours | Tue Jun 10 22:32:01 1997 | Tue Jun 10 12:32:01 1997
  924. Tue Jun 10 18:32:01 1997 | @ 1 min | Tue Jun 10 18:33:01 1997 | Tue Jun 10 18:31:01 1997
  925. Tue Jun 10 18:32:01 1997 | @ 5 hours | Tue Jun 10 23:32:01 1997 | Tue Jun 10 13:32:01 1997
  926. Tue Dec 30 17:32:01 1997 | @ 1 min | Tue Dec 30 17:33:01 1997 | Tue Dec 30 17:31:01 1997
  927. Tue Dec 30 17:32:01 1997 | @ 5 hours | Tue Dec 30 22:32:01 1997 | Tue Dec 30 12:32:01 1997
  928. Wed Dec 31 17:32:01 1997 | @ 1 min | Wed Dec 31 17:33:01 1997 | Wed Dec 31 17:31:01 1997
  929. Wed Dec 31 17:32:01 1997 | @ 5 hours | Wed Dec 31 22:32:01 1997 | Wed Dec 31 12:32:01 1997
  930. Fri Dec 31 17:32:01 1999 | @ 1 min | Fri Dec 31 17:33:01 1999 | Fri Dec 31 17:31:01 1999
  931. Fri Dec 31 17:32:01 1999 | @ 5 hours | Fri Dec 31 22:32:01 1999 | Fri Dec 31 12:32:01 1999
  932. Sat Jan 01 17:32:01 2000 | @ 1 min | Sat Jan 01 17:33:01 2000 | Sat Jan 01 17:31:01 2000
  933. Sat Jan 01 17:32:01 2000 | @ 5 hours | Sat Jan 01 22:32:01 2000 | Sat Jan 01 12:32:01 2000
  934. Wed Mar 15 02:14:05 2000 | @ 1 min | Wed Mar 15 02:15:05 2000 | Wed Mar 15 02:13:05 2000
  935. Wed Mar 15 02:14:05 2000 | @ 5 hours | Wed Mar 15 07:14:05 2000 | Tue Mar 14 21:14:05 2000
  936. Wed Mar 15 03:14:04 2000 | @ 1 min | Wed Mar 15 03:15:04 2000 | Wed Mar 15 03:13:04 2000
  937. Wed Mar 15 03:14:04 2000 | @ 5 hours | Wed Mar 15 08:14:04 2000 | Tue Mar 14 22:14:04 2000
  938. Wed Mar 15 08:14:01 2000 | @ 1 min | Wed Mar 15 08:15:01 2000 | Wed Mar 15 08:13:01 2000
  939. Wed Mar 15 08:14:01 2000 | @ 5 hours | Wed Mar 15 13:14:01 2000 | Wed Mar 15 03:14:01 2000
  940. Wed Mar 15 12:14:03 2000 | @ 1 min | Wed Mar 15 12:15:03 2000 | Wed Mar 15 12:13:03 2000
  941. Wed Mar 15 12:14:03 2000 | @ 5 hours | Wed Mar 15 17:14:03 2000 | Wed Mar 15 07:14:03 2000
  942. Wed Mar 15 13:14:02 2000 | @ 1 min | Wed Mar 15 13:15:02 2000 | Wed Mar 15 13:13:02 2000
  943. Wed Mar 15 13:14:02 2000 | @ 5 hours | Wed Mar 15 18:14:02 2000 | Wed Mar 15 08:14:02 2000
  944. Sun Dec 31 17:32:01 2000 | @ 1 min | Sun Dec 31 17:33:01 2000 | Sun Dec 31 17:31:01 2000
  945. Sun Dec 31 17:32:01 2000 | @ 5 hours | Sun Dec 31 22:32:01 2000 | Sun Dec 31 12:32:01 2000
  946. (104 rows)
  947. SELECT t.f1 AS t, i.f1 AS i, t.f1 + i.f1 AS "add", t.f1 - i.f1 AS "subtract"
  948. FROM TIME_TBL t, INTERVAL_TBL i
  949. ORDER BY 1,2;
  950. t | i | add | subtract
  951. -------------+-------------------------------+-------------+-------------
  952. 00:00:00 | @ 14 secs ago | 23:59:46 | 00:00:14
  953. 00:00:00 | @ 1 min | 00:01:00 | 23:59:00
  954. 00:00:00 | @ 5 hours | 05:00:00 | 19:00:00
  955. 00:00:00 | @ 1 day 2 hours 3 mins 4 secs | 02:03:04 | 21:56:56
  956. 00:00:00 | @ 10 days | 00:00:00 | 00:00:00
  957. 00:00:00 | @ 3 mons | 00:00:00 | 00:00:00
  958. 00:00:00 | @ 5 mons | 00:00:00 | 00:00:00
  959. 00:00:00 | @ 5 mons 12 hours | 12:00:00 | 12:00:00
  960. 00:00:00 | @ 6 years | 00:00:00 | 00:00:00
  961. 00:00:00 | @ 34 years | 00:00:00 | 00:00:00
  962. 01:00:00 | @ 14 secs ago | 00:59:46 | 01:00:14
  963. 01:00:00 | @ 1 min | 01:01:00 | 00:59:00
  964. 01:00:00 | @ 5 hours | 06:00:00 | 20:00:00
  965. 01:00:00 | @ 1 day 2 hours 3 mins 4 secs | 03:03:04 | 22:56:56
  966. 01:00:00 | @ 10 days | 01:00:00 | 01:00:00
  967. 01:00:00 | @ 3 mons | 01:00:00 | 01:00:00
  968. 01:00:00 | @ 5 mons | 01:00:00 | 01:00:00
  969. 01:00:00 | @ 5 mons 12 hours | 13:00:00 | 13:00:00
  970. 01:00:00 | @ 6 years | 01:00:00 | 01:00:00
  971. 01:00:00 | @ 34 years | 01:00:00 | 01:00:00
  972. 02:03:00 | @ 14 secs ago | 02:02:46 | 02:03:14
  973. 02:03:00 | @ 1 min | 02:04:00 | 02:02:00
  974. 02:03:00 | @ 5 hours | 07:03:00 | 21:03:00
  975. 02:03:00 | @ 1 day 2 hours 3 mins 4 secs | 04:06:04 | 23:59:56
  976. 02:03:00 | @ 10 days | 02:03:00 | 02:03:00
  977. 02:03:00 | @ 3 mons | 02:03:00 | 02:03:00
  978. 02:03:00 | @ 5 mons | 02:03:00 | 02:03:00
  979. 02:03:00 | @ 5 mons 12 hours | 14:03:00 | 14:03:00
  980. 02:03:00 | @ 6 years | 02:03:00 | 02:03:00
  981. 02:03:00 | @ 34 years | 02:03:00 | 02:03:00
  982. 11:59:00 | @ 14 secs ago | 11:58:46 | 11:59:14
  983. 11:59:00 | @ 1 min | 12:00:00 | 11:58:00
  984. 11:59:00 | @ 5 hours | 16:59:00 | 06:59:00
  985. 11:59:00 | @ 1 day 2 hours 3 mins 4 secs | 14:02:04 | 09:55:56
  986. 11:59:00 | @ 10 days | 11:59:00 | 11:59:00
  987. 11:59:00 | @ 3 mons | 11:59:00 | 11:59:00
  988. 11:59:00 | @ 5 mons | 11:59:00 | 11:59:00
  989. 11:59:00 | @ 5 mons 12 hours | 23:59:00 | 23:59:00
  990. 11:59:00 | @ 6 years | 11:59:00 | 11:59:00
  991. 11:59:00 | @ 34 years | 11:59:00 | 11:59:00
  992. 12:00:00 | @ 14 secs ago | 11:59:46 | 12:00:14
  993. 12:00:00 | @ 1 min | 12:01:00 | 11:59:00
  994. 12:00:00 | @ 5 hours | 17:00:00 | 07:00:00
  995. 12:00:00 | @ 1 day 2 hours 3 mins 4 secs | 14:03:04 | 09:56:56
  996. 12:00:00 | @ 10 days | 12:00:00 | 12:00:00
  997. 12:00:00 | @ 3 mons | 12:00:00 | 12:00:00
  998. 12:00:00 | @ 5 mons | 12:00:00 | 12:00:00
  999. 12:00:00 | @ 5 mons 12 hours | 00:00:00 | 00:00:00
  1000. 12:00:00 | @ 6 years | 12:00:00 | 12:00:00
  1001. 12:00:00 | @ 34 years | 12:00:00 | 12:00:00
  1002. 12:01:00 | @ 14 secs ago | 12:00:46 | 12:01:14
  1003. 12:01:00 | @ 1 min | 12:02:00 | 12:00:00
  1004. 12:01:00 | @ 5 hours | 17:01:00 | 07:01:00
  1005. 12:01:00 | @ 1 day 2 hours 3 mins 4 secs | 14:04:04 | 09:57:56
  1006. 12:01:00 | @ 10 days | 12:01:00 | 12:01:00
  1007. 12:01:00 | @ 3 mons | 12:01:00 | 12:01:00
  1008. 12:01:00 | @ 5 mons | 12:01:00 | 12:01:00
  1009. 12:01:00 | @ 5 mons 12 hours | 00:01:00 | 00:01:00
  1010. 12:01:00 | @ 6 years | 12:01:00 | 12:01:00
  1011. 12:01:00 | @ 34 years | 12:01:00 | 12:01:00
  1012. 15:36:39 | @ 14 secs ago | 15:36:25 | 15:36:53
  1013. 15:36:39 | @ 14 secs ago | 15:36:25 | 15:36:53
  1014. 15:36:39 | @ 1 min | 15:37:39 | 15:35:39
  1015. 15:36:39 | @ 1 min | 15:37:39 | 15:35:39
  1016. 15:36:39 | @ 5 hours | 20:36:39 | 10:36:39
  1017. 15:36:39 | @ 5 hours | 20:36:39 | 10:36:39
  1018. 15:36:39 | @ 1 day 2 hours 3 mins 4 secs | 17:39:43 | 13:33:35
  1019. 15:36:39 | @ 1 day 2 hours 3 mins 4 secs | 17:39:43 | 13:33:35
  1020. 15:36:39 | @ 10 days | 15:36:39 | 15:36:39
  1021. 15:36:39 | @ 10 days | 15:36:39 | 15:36:39
  1022. 15:36:39 | @ 3 mons | 15:36:39 | 15:36:39
  1023. 15:36:39 | @ 3 mons | 15:36:39 | 15:36:39
  1024. 15:36:39 | @ 5 mons | 15:36:39 | 15:36:39
  1025. 15:36:39 | @ 5 mons | 15:36:39 | 15:36:39
  1026. 15:36:39 | @ 5 mons 12 hours | 03:36:39 | 03:36:39
  1027. 15:36:39 | @ 5 mons 12 hours | 03:36:39 | 03:36:39
  1028. 15:36:39 | @ 6 years | 15:36:39 | 15:36:39
  1029. 15:36:39 | @ 6 years | 15:36:39 | 15:36:39
  1030. 15:36:39 | @ 34 years | 15:36:39 | 15:36:39
  1031. 15:36:39 | @ 34 years | 15:36:39 | 15:36:39
  1032. 23:59:00 | @ 14 secs ago | 23:58:46 | 23:59:14
  1033. 23:59:00 | @ 1 min | 00:00:00 | 23:58:00
  1034. 23:59:00 | @ 5 hours | 04:59:00 | 18:59:00
  1035. 23:59:00 | @ 1 day 2 hours 3 mins 4 secs | 02:02:04 | 21:55:56
  1036. 23:59:00 | @ 10 days | 23:59:00 | 23:59:00
  1037. 23:59:00 | @ 3 mons | 23:59:00 | 23:59:00
  1038. 23:59:00 | @ 5 mons | 23:59:00 | 23:59:00
  1039. 23:59:00 | @ 5 mons 12 hours | 11:59:00 | 11:59:00
  1040. 23:59:00 | @ 6 years | 23:59:00 | 23:59:00
  1041. 23:59:00 | @ 34 years | 23:59:00 | 23:59:00
  1042. 23:59:59.99 | @ 14 secs ago | 23:59:45.99 | 00:00:13.99
  1043. 23:59:59.99 | @ 1 min | 00:00:59.99 | 23:58:59.99
  1044. 23:59:59.99 | @ 5 hours | 04:59:59.99 | 18:59:59.99
  1045. 23:59:59.99 | @ 1 day 2 hours 3 mins 4 secs | 02:03:03.99 | 21:56:55.99
  1046. 23:59:59.99 | @ 10 days | 23:59:59.99 | 23:59:59.99
  1047. 23:59:59.99 | @ 3 mons | 23:59:59.99 | 23:59:59.99
  1048. 23:59:59.99 | @ 5 mons | 23:59:59.99 | 23:59:59.99
  1049. 23:59:59.99 | @ 5 mons 12 hours | 11:59:59.99 | 11:59:59.99
  1050. 23:59:59.99 | @ 6 years | 23:59:59.99 | 23:59:59.99
  1051. 23:59:59.99 | @ 34 years | 23:59:59.99 | 23:59:59.99
  1052. (100 rows)
  1053. SELECT t.f1 AS t, i.f1 AS i, t.f1 + i.f1 AS "add", t.f1 - i.f1 AS "subtract"
  1054. FROM TIMETZ_TBL t, INTERVAL_TBL i
  1055. ORDER BY 1,2;
  1056. t | i | add | subtract
  1057. ----------------+-------------------------------+----------------+----------------
  1058. 00:01:00-07 | @ 14 secs ago | 00:00:46-07 | 00:01:14-07
  1059. 00:01:00-07 | @ 1 min | 00:02:00-07 | 00:00:00-07
  1060. 00:01:00-07 | @ 5 hours | 05:01:00-07 | 19:01:00-07
  1061. 00:01:00-07 | @ 1 day 2 hours 3 mins 4 secs | 02:04:04-07 | 21:57:56-07
  1062. 00:01:00-07 | @ 10 days | 00:01:00-07 | 00:01:00-07
  1063. 00:01:00-07 | @ 3 mons | 00:01:00-07 | 00:01:00-07
  1064. 00:01:00-07 | @ 5 mons | 00:01:00-07 | 00:01:00-07
  1065. 00:01:00-07 | @ 5 mons 12 hours | 12:01:00-07 | 12:01:00-07
  1066. 00:01:00-07 | @ 6 years | 00:01:00-07 | 00:01:00-07
  1067. 00:01:00-07 | @ 34 years | 00:01:00-07 | 00:01:00-07
  1068. 01:00:00-07 | @ 14 secs ago | 00:59:46-07 | 01:00:14-07
  1069. 01:00:00-07 | @ 1 min | 01:01:00-07 | 00:59:00-07
  1070. 01:00:00-07 | @ 5 hours | 06:00:00-07 | 20:00:00-07
  1071. 01:00:00-07 | @ 1 day 2 hours 3 mins 4 secs | 03:03:04-07 | 22:56:56-07
  1072. 01:00:00-07 | @ 10 days | 01:00:00-07 | 01:00:00-07
  1073. 01:00:00-07 | @ 3 mons | 01:00:00-07 | 01:00:00-07
  1074. 01:00:00-07 | @ 5 mons | 01:00:00-07 | 01:00:00-07
  1075. 01:00:00-07 | @ 5 mons 12 hours | 13:00:00-07 | 13:00:00-07
  1076. 01:00:00-07 | @ 6 years | 01:00:00-07 | 01:00:00-07
  1077. 01:00:00-07 | @ 34 years | 01:00:00-07 | 01:00:00-07
  1078. 02:03:00-07 | @ 14 secs ago | 02:02:46-07 | 02:03:14-07
  1079. 02:03:00-07 | @ 1 min | 02:04:00-07 | 02:02:00-07
  1080. 02:03:00-07 | @ 5 hours | 07:03:00-07 | 21:03:00-07
  1081. 02:03:00-07 | @ 1 day 2 hours 3 mins 4 secs | 04:06:04-07 | 23:59:56-07
  1082. 02:03:00-07 | @ 10 days | 02:03:00-07 | 02:03:00-07
  1083. 02:03:00-07 | @ 3 mons | 02:03:00-07 | 02:03:00-07
  1084. 02:03:00-07 | @ 5 mons | 02:03:00-07 | 02:03:00-07
  1085. 02:03:00-07 | @ 5 mons 12 hours | 14:03:00-07 | 14:03:00-07
  1086. 02:03:00-07 | @ 6 years | 02:03:00-07 | 02:03:00-07
  1087. 02:03:00-07 | @ 34 years | 02:03:00-07 | 02:03:00-07
  1088. 08:08:00-04 | @ 14 secs ago | 08:07:46-04 | 08:08:14-04
  1089. 08:08:00-04 | @ 1 min | 08:09:00-04 | 08:07:00-04
  1090. 08:08:00-04 | @ 5 hours | 13:08:00-04 | 03:08:00-04
  1091. 08:08:00-04 | @ 1 day 2 hours 3 mins 4 secs | 10:11:04-04 | 06:04:56-04
  1092. 08:08:00-04 | @ 10 days | 08:08:00-04 | 08:08:00-04
  1093. 08:08:00-04 | @ 3 mons | 08:08:00-04 | 08:08:00-04
  1094. 08:08:00-04 | @ 5 mons | 08:08:00-04 | 08:08:00-04
  1095. 08:08:00-04 | @ 5 mons 12 hours | 20:08:00-04 | 20:08:00-04
  1096. 08:08:00-04 | @ 6 years | 08:08:00-04 | 08:08:00-04
  1097. 08:08:00-04 | @ 34 years | 08:08:00-04 | 08:08:00-04
  1098. 07:07:00-08 | @ 14 secs ago | 07:06:46-08 | 07:07:14-08
  1099. 07:07:00-08 | @ 1 min | 07:08:00-08 | 07:06:00-08
  1100. 07:07:00-08 | @ 5 hours | 12:07:00-08 | 02:07:00-08
  1101. 07:07:00-08 | @ 1 day 2 hours 3 mins 4 secs | 09:10:04-08 | 05:03:56-08
  1102. 07:07:00-08 | @ 10 days | 07:07:00-08 | 07:07:00-08
  1103. 07:07:00-08 | @ 3 mons | 07:07:00-08 | 07:07:00-08
  1104. 07:07:00-08 | @ 5 mons | 07:07:00-08 | 07:07:00-08
  1105. 07:07:00-08 | @ 5 mons 12 hours | 19:07:00-08 | 19:07:00-08
  1106. 07:07:00-08 | @ 6 years | 07:07:00-08 | 07:07:00-08
  1107. 07:07:00-08 | @ 34 years | 07:07:00-08 | 07:07:00-08
  1108. 11:59:00-07 | @ 14 secs ago | 11:58:46-07 | 11:59:14-07
  1109. 11:59:00-07 | @ 1 min | 12:00:00-07 | 11:58:00-07
  1110. 11:59:00-07 | @ 5 hours | 16:59:00-07 | 06:59:00-07
  1111. 11:59:00-07 | @ 1 day 2 hours 3 mins 4 secs | 14:02:04-07 | 09:55:56-07
  1112. 11:59:00-07 | @ 10 days | 11:59:00-07 | 11:59:00-07
  1113. 11:59:00-07 | @ 3 mons | 11:59:00-07 | 11:59:00-07
  1114. 11:59:00-07 | @ 5 mons | 11:59:00-07 | 11:59:00-07
  1115. 11:59:00-07 | @ 5 mons 12 hours | 23:59:00-07 | 23:59:00-07
  1116. 11:59:00-07 | @ 6 years | 11:59:00-07 | 11:59:00-07
  1117. 11:59:00-07 | @ 34 years | 11:59:00-07 | 11:59:00-07
  1118. 12:00:00-07 | @ 14 secs ago | 11:59:46-07 | 12:00:14-07
  1119. 12:00:00-07 | @ 1 min | 12:01:00-07 | 11:59:00-07
  1120. 12:00:00-07 | @ 5 hours | 17:00:00-07 | 07:00:00-07
  1121. 12:00:00-07 | @ 1 day 2 hours 3 mins 4 secs | 14:03:04-07 | 09:56:56-07
  1122. 12:00:00-07 | @ 10 days | 12:00:00-07 | 12:00:00-07
  1123. 12:00:00-07 | @ 3 mons | 12:00:00-07 | 12:00:00-07
  1124. 12:00:00-07 | @ 5 mons | 12:00:00-07 | 12:00:00-07
  1125. 12:00:00-07 | @ 5 mons 12 hours | 00:00:00-07 | 00:00:00-07
  1126. 12:00:00-07 | @ 6 years | 12:00:00-07 | 12:00:00-07
  1127. 12:00:00-07 | @ 34 years | 12:00:00-07 | 12:00:00-07
  1128. 12:01:00-07 | @ 14 secs ago | 12:00:46-07 | 12:01:14-07
  1129. 12:01:00-07 | @ 1 min | 12:02:00-07 | 12:00:00-07
  1130. 12:01:00-07 | @ 5 hours | 17:01:00-07 | 07:01:00-07
  1131. 12:01:00-07 | @ 1 day 2 hours 3 mins 4 secs | 14:04:04-07 | 09:57:56-07
  1132. 12:01:00-07 | @ 10 days | 12:01:00-07 | 12:01:00-07
  1133. 12:01:00-07 | @ 3 mons | 12:01:00-07 | 12:01:00-07
  1134. 12:01:00-07 | @ 5 mons | 12:01:00-07 | 12:01:00-07
  1135. 12:01:00-07 | @ 5 mons 12 hours | 00:01:00-07 | 00:01:00-07
  1136. 12:01:00-07 | @ 6 years | 12:01:00-07 | 12:01:00-07
  1137. 12:01:00-07 | @ 34 years | 12:01:00-07 | 12:01:00-07
  1138. 15:36:39-04 | @ 14 secs ago | 15:36:25-04 | 15:36:53-04
  1139. 15:36:39-04 | @ 1 min | 15:37:39-04 | 15:35:39-04
  1140. 15:36:39-04 | @ 5 hours | 20:36:39-04 | 10:36:39-04
  1141. 15:36:39-04 | @ 1 day 2 hours 3 mins 4 secs | 17:39:43-04 | 13:33:35-04
  1142. 15:36:39-04 | @ 10 days | 15:36:39-04 | 15:36:39-04
  1143. 15:36:39-04 | @ 3 mons | 15:36:39-04 | 15:36:39-04
  1144. 15:36:39-04 | @ 5 mons | 15:36:39-04 | 15:36:39-04
  1145. 15:36:39-04 | @ 5 mons 12 hours | 03:36:39-04 | 03:36:39-04
  1146. 15:36:39-04 | @ 6 years | 15:36:39-04 | 15:36:39-04
  1147. 15:36:39-04 | @ 34 years | 15:36:39-04 | 15:36:39-04
  1148. 15:36:39-05 | @ 14 secs ago | 15:36:25-05 | 15:36:53-05
  1149. 15:36:39-05 | @ 1 min | 15:37:39-05 | 15:35:39-05
  1150. 15:36:39-05 | @ 5 hours | 20:36:39-05 | 10:36:39-05
  1151. 15:36:39-05 | @ 1 day 2 hours 3 mins 4 secs | 17:39:43-05 | 13:33:35-05
  1152. 15:36:39-05 | @ 10 days | 15:36:39-05 | 15:36:39-05
  1153. 15:36:39-05 | @ 3 mons | 15:36:39-05 | 15:36:39-05
  1154. 15:36:39-05 | @ 5 mons | 15:36:39-05 | 15:36:39-05
  1155. 15:36:39-05 | @ 5 mons 12 hours | 03:36:39-05 | 03:36:39-05
  1156. 15:36:39-05 | @ 6 years | 15:36:39-05 | 15:36:39-05
  1157. 15:36:39-05 | @ 34 years | 15:36:39-05 | 15:36:39-05
  1158. 23:59:00-07 | @ 14 secs ago | 23:58:46-07 | 23:59:14-07
  1159. 23:59:00-07 | @ 1 min | 00:00:00-07 | 23:58:00-07
  1160. 23:59:00-07 | @ 5 hours | 04:59:00-07 | 18:59:00-07
  1161. 23:59:00-07 | @ 1 day 2 hours 3 mins 4 secs | 02:02:04-07 | 21:55:56-07
  1162. 23:59:00-07 | @ 10 days | 23:59:00-07 | 23:59:00-07
  1163. 23:59:00-07 | @ 3 mons | 23:59:00-07 | 23:59:00-07
  1164. 23:59:00-07 | @ 5 mons | 23:59:00-07 | 23:59:00-07
  1165. 23:59:00-07 | @ 5 mons 12 hours | 11:59:00-07 | 11:59:00-07
  1166. 23:59:00-07 | @ 6 years | 23:59:00-07 | 23:59:00-07
  1167. 23:59:00-07 | @ 34 years | 23:59:00-07 | 23:59:00-07
  1168. 23:59:59.99-07 | @ 14 secs ago | 23:59:45.99-07 | 00:00:13.99-07
  1169. 23:59:59.99-07 | @ 1 min | 00:00:59.99-07 | 23:58:59.99-07
  1170. 23:59:59.99-07 | @ 5 hours | 04:59:59.99-07 | 18:59:59.99-07
  1171. 23:59:59.99-07 | @ 1 day 2 hours 3 mins 4 secs | 02:03:03.99-07 | 21:56:55.99-07
  1172. 23:59:59.99-07 | @ 10 days | 23:59:59.99-07 | 23:59:59.99-07
  1173. 23:59:59.99-07 | @ 3 mons | 23:59:59.99-07 | 23:59:59.99-07
  1174. 23:59:59.99-07 | @ 5 mons | 23:59:59.99-07 | 23:59:59.99-07
  1175. 23:59:59.99-07 | @ 5 mons 12 hours | 11:59:59.99-07 | 11:59:59.99-07
  1176. 23:59:59.99-07 | @ 6 years | 23:59:59.99-07 | 23:59:59.99-07
  1177. 23:59:59.99-07 | @ 34 years | 23:59:59.99-07 | 23:59:59.99-07
  1178. (120 rows)
  1179. -- SQL9x OVERLAPS operator
  1180. -- test with time zone
  1181. SELECT (timestamp with time zone '2000-11-27', timestamp with time zone '2000-11-28')
  1182. OVERLAPS (timestamp with time zone '2000-11-27 12:00', timestamp with time zone '2000-11-30') AS "True";
  1183. True
  1184. ------
  1185. t
  1186. (1 row)
  1187. SELECT (timestamp with time zone '2000-11-26', timestamp with time zone '2000-11-27')
  1188. OVERLAPS (timestamp with time zone '2000-11-27 12:00', timestamp with time zone '2000-11-30') AS "False";
  1189. False
  1190. -------
  1191. f
  1192. (1 row)
  1193. SELECT (timestamp with time zone '2000-11-27', timestamp with time zone '2000-11-28')
  1194. OVERLAPS (timestamp with time zone '2000-11-27 12:00', interval '1 day') AS "True";
  1195. True
  1196. ------
  1197. t
  1198. (1 row)
  1199. SELECT (timestamp with time zone '2000-11-27', interval '12 hours')
  1200. OVERLAPS (timestamp with time zone '2000-11-27 12:00', timestamp with time zone '2000-11-30') AS "False";
  1201. False
  1202. -------
  1203. f
  1204. (1 row)
  1205. SELECT (timestamp with time zone '2000-11-27', interval '12 hours')
  1206. OVERLAPS (timestamp with time zone '2000-11-27', interval '12 hours') AS "True";
  1207. True
  1208. ------
  1209. t
  1210. (1 row)
  1211. SELECT (timestamp with time zone '2000-11-27', interval '12 hours')
  1212. OVERLAPS (timestamp with time zone '2000-11-27 12:00', interval '12 hours') AS "False";
  1213. False
  1214. -------
  1215. f
  1216. (1 row)
  1217. -- test without time zone
  1218. SELECT (timestamp without time zone '2000-11-27', timestamp without time zone '2000-11-28')
  1219. OVERLAPS (timestamp without time zone '2000-11-27 12:00', timestamp without time zone '2000-11-30') AS "True";
  1220. True
  1221. ------
  1222. t
  1223. (1 row)
  1224. SELECT (timestamp without time zone '2000-11-26', timestamp without time zone '2000-11-27')
  1225. OVERLAPS (timestamp without time zone '2000-11-27 12:00', timestamp without time zone '2000-11-30') AS "False";
  1226. False
  1227. -------
  1228. f
  1229. (1 row)
  1230. SELECT (timestamp without time zone '2000-11-27', timestamp without time zone '2000-11-28')
  1231. OVERLAPS (timestamp without time zone '2000-11-27 12:00', interval '1 day') AS "True";
  1232. True
  1233. ------
  1234. t
  1235. (1 row)
  1236. SELECT (timestamp without time zone '2000-11-27', interval '12 hours')
  1237. OVERLAPS (timestamp without time zone '2000-11-27 12:00', timestamp without time zone '2000-11-30') AS "False";
  1238. False
  1239. -------
  1240. f
  1241. (1 row)
  1242. SELECT (timestamp without time zone '2000-11-27', interval '12 hours')
  1243. OVERLAPS (timestamp without time zone '2000-11-27', interval '12 hours') AS "True";
  1244. True
  1245. ------
  1246. t
  1247. (1 row)
  1248. SELECT (timestamp without time zone '2000-11-27', interval '12 hours')
  1249. OVERLAPS (timestamp without time zone '2000-11-27 12:00', interval '12 hours') AS "False";
  1250. False
  1251. -------
  1252. f
  1253. (1 row)
  1254. -- test time and interval
  1255. SELECT (time '00:00', time '01:00')
  1256. OVERLAPS (time '00:30', time '01:30') AS "True";
  1257. True
  1258. ------
  1259. t
  1260. (1 row)
  1261. SELECT (time '00:00', interval '1 hour')
  1262. OVERLAPS (time '00:30', interval '1 hour') AS "True";
  1263. True
  1264. ------
  1265. t
  1266. (1 row)
  1267. SELECT (time '00:00', interval '1 hour')
  1268. OVERLAPS (time '01:30', interval '1 hour') AS "False";
  1269. False
  1270. -------
  1271. f
  1272. (1 row)
  1273. -- SQL99 seems to want this to be false (and we conform to the spec).
  1274. -- istm that this *should* return true, on the theory that time
  1275. -- intervals can wrap around the day boundary - thomas 2001-09-25
  1276. SELECT (time '00:00', interval '1 hour')
  1277. OVERLAPS (time '01:30', interval '1 day') AS "False";
  1278. False
  1279. -------
  1280. f
  1281. (1 row)
  1282. CREATE TABLE TEMP_TIMESTAMP (f1 timestamp with time zone);
  1283. -- get some candidate input values
  1284. INSERT INTO TEMP_TIMESTAMP (f1)
  1285. SELECT d1 FROM TIMESTAMP_TBL
  1286. WHERE d1 BETWEEN '13-jun-1957' AND '1-jan-1997'
  1287. OR d1 BETWEEN '1-jan-1999' AND '1-jan-2010';
  1288. SELECT f1 AS "timestamp"
  1289. FROM TEMP_TIMESTAMP
  1290. ORDER BY "timestamp";
  1291. timestamp
  1292. ------------------------------
  1293. Thu Jan 01 00:00:00 1970 PST
  1294. Wed Feb 28 17:32:01 1996 PST
  1295. Thu Feb 29 17:32:01 1996 PST
  1296. Fri Mar 01 17:32:01 1996 PST
  1297. Mon Dec 30 17:32:01 1996 PST
  1298. Tue Dec 31 17:32:01 1996 PST
  1299. Fri Dec 31 17:32:01 1999 PST
  1300. Sat Jan 01 17:32:01 2000 PST
  1301. Wed Mar 15 02:14:05 2000 PST
  1302. Wed Mar 15 03:14:04 2000 PST
  1303. Wed Mar 15 08:14:01 2000 PST
  1304. Wed Mar 15 12:14:03 2000 PST
  1305. Wed Mar 15 13:14:02 2000 PST
  1306. Sun Dec 31 17:32:01 2000 PST
  1307. Mon Jan 01 17:32:01 2001 PST
  1308. Sat Sep 22 18:19:20 2001 PDT
  1309. (16 rows)
  1310. SELECT d.f1 AS "timestamp", t.f1 AS "interval", d.f1 + t.f1 AS plus
  1311. FROM TEMP_TIMESTAMP d, INTERVAL_TBL t
  1312. ORDER BY plus, "timestamp", "interval";
  1313. timestamp | interval | plus
  1314. ------------------------------+-------------------------------+------------------------------
  1315. Thu Jan 01 00:00:00 1970 PST | @ 14 secs ago | Wed Dec 31 23:59:46 1969 PST
  1316. Thu Jan 01 00:00:00 1970 PST | @ 1 min | Thu Jan 01 00:01:00 1970 PST
  1317. Thu Jan 01 00:00:00 1970 PST | @ 5 hours | Thu Jan 01 05:00:00 1970 PST
  1318. Thu Jan 01 00:00:00 1970 PST | @ 1 day 2 hours 3 mins 4 secs | Fri Jan 02 02:03:04 1970 PST
  1319. Thu Jan 01 00:00:00 1970 PST | @ 10 days | Sun Jan 11 00:00:00 1970 PST
  1320. Thu Jan 01 00:00:00 1970 PST | @ 3 mons | Wed Apr 01 00:00:00 1970 PST
  1321. Thu Jan 01 00:00:00 1970 PST | @ 5 mons | Mon Jun 01 00:00:00 1970 PDT
  1322. Thu Jan 01 00:00:00 1970 PST | @ 5 mons 12 hours | Mon Jun 01 12:00:00 1970 PDT
  1323. Thu Jan 01 00:00:00 1970 PST | @ 6 years | Thu Jan 01 00:00:00 1976 PST
  1324. Wed Feb 28 17:32:01 1996 PST | @ 14 secs ago | Wed Feb 28 17:31:47 1996 PST
  1325. Wed Feb 28 17:32:01 1996 PST | @ 1 min | Wed Feb 28 17:33:01 1996 PST
  1326. Wed Feb 28 17:32:01 1996 PST | @ 5 hours | Wed Feb 28 22:32:01 1996 PST
  1327. Thu Feb 29 17:32:01 1996 PST | @ 14 secs ago | Thu Feb 29 17:31:47 1996 PST
  1328. Thu Feb 29 17:32:01 1996 PST | @ 1 min | Thu Feb 29 17:33:01 1996 PST
  1329. Wed Feb 28 17:32:01 1996 PST | @ 1 day 2 hours 3 mins 4 secs | Thu Feb 29 19:35:05 1996 PST
  1330. Thu Feb 29 17:32:01 1996 PST | @ 5 hours | Thu Feb 29 22:32:01 1996 PST
  1331. Fri Mar 01 17:32:01 1996 PST | @ 14 secs ago | Fri Mar 01 17:31:47 1996 PST
  1332. Fri Mar 01 17:32:01 1996 PST | @ 1 min | Fri Mar 01 17:33:01 1996 PST
  1333. Thu Feb 29 17:32:01 1996 PST | @ 1 day 2 hours 3 mins 4 secs | Fri Mar 01 19:35:05 1996 PST
  1334. Fri Mar 01 17:32:01 1996 PST | @ 5 hours | Fri Mar 01 22:32:01 1996 PST
  1335. Fri Mar 01 17:32:01 1996 PST | @ 1 day 2 hours 3 mins 4 secs | Sat Mar 02 19:35:05 1996 PST
  1336. Wed Feb 28 17:32:01 1996 PST | @ 10 days | Sat Mar 09 17:32:01 1996 PST
  1337. Thu Feb 29 17:32:01 1996 PST | @ 10 days | Sun Mar 10 17:32:01 1996 PST
  1338. Fri Mar 01 17:32:01 1996 PST | @ 10 days | Mon Mar 11 17:32:01 1996 PST
  1339. Wed Feb 28 17:32:01 1996 PST | @ 3 mons | Tue May 28 17:32:01 1996 PDT
  1340. Thu Feb 29 17:32:01 1996 PST | @ 3 mons | Wed May 29 17:32:01 1996 PDT
  1341. Fri Mar 01 17:32:01 1996 PST | @ 3 mons | Sat Jun 01 17:32:01 1996 PDT
  1342. Wed Feb 28 17:32:01 1996 PST | @ 5 mons | Sun Jul 28 17:32:01 1996 PDT
  1343. Wed Feb 28 17:32:01 1996 PST | @ 5 mons 12 hours | Mon Jul 29 05:32:01 1996 PDT
  1344. Thu Feb 29 17:32:01 1996 PST | @ 5 mons | Mon Jul 29 17:32:01 1996 PDT
  1345. Thu Feb 29 17:32:01 1996 PST | @ 5 mons 12 hours | Tue Jul 30 05:32:01 1996 PDT
  1346. Fri Mar 01 17:32:01 1996 PST | @ 5 mons | Thu Aug 01 17:32:01 1996 PDT
  1347. Fri Mar 01 17:32:01 1996 PST | @ 5 mons 12 hours | Fri Aug 02 05:32:01 1996 PDT
  1348. Mon Dec 30 17:32:01 1996 PST | @ 14 secs ago | Mon Dec 30 17:31:47 1996 PST
  1349. Mon Dec 30 17:32:01 1996 PST | @ 1 min | Mon Dec 30 17:33:01 1996 PST
  1350. Mon Dec 30 17:32:01 1996 PST | @ 5 hours | Mon Dec 30 22:32:01 1996 PST
  1351. Tue Dec 31 17:32:01 1996 PST | @ 14 secs ago | Tue Dec 31 17:31:47 1996 PST
  1352. Tue Dec 31 17:32:01 1996 PST | @ 1 min | Tue Dec 31 17:33:01 1996 PST
  1353. Mon Dec 30 17:32:01 1996 PST | @ 1 day 2 hours 3 mins 4 secs | Tue Dec 31 19:35:05 1996 PST
  1354. Tue Dec 31 17:32:01 1996 PST | @ 5 hours | Tue Dec 31 22:32:01 1996 PST
  1355. Tue Dec 31 17:32:01 1996 PST | @ 1 day 2 hours 3 mins 4 secs | Wed Jan 01 19:35:05 1997 PST
  1356. Mon Dec 30 17:32:01 1996 PST | @ 10 days | Thu Jan 09 17:32:01 1997 PST
  1357. Tue Dec 31 17:32:01 1996 PST | @ 10 days | Fri Jan 10 17:32:01 1997 PST
  1358. Mon Dec 30 17:32:01 1996 PST | @ 3 mons | Sun Mar 30 17:32:01 1997 PST
  1359. Tue Dec 31 17:32:01 1996 PST | @ 3 mons | Mon Mar 31 17:32:01 1997 PST
  1360. Mon Dec 30 17:32:01 1996 PST | @ 5 mons | Fri May 30 17:32:01 1997 PDT
  1361. Mon Dec 30 17:32:01 1996 PST | @ 5 mons 12 hours | Sat May 31 05:32:01 1997 PDT
  1362. Tue Dec 31 17:32:01 1996 PST | @ 5 mons | Sat May 31 17:32:01 1997 PDT
  1363. Tue Dec 31 17:32:01 1996 PST | @ 5 mons 12 hours | Sun Jun 01 05:32:01 1997 PDT
  1364. Fri Dec 31 17:32:01 1999 PST | @ 14 secs ago | Fri Dec 31 17:31:47 1999 PST
  1365. Fri Dec 31 17:32:01 1999 PST | @ 1 min | Fri Dec 31 17:33:01 1999 PST
  1366. Fri Dec 31 17:32:01 1999 PST | @ 5 hours | Fri Dec 31 22:32:01 1999 PST
  1367. Sat Jan 01 17:32:01 2000 PST | @ 14 secs ago | Sat Jan 01 17:31:47 2000 PST
  1368. Sat Jan 01 17:32:01 2000 PST | @ 1 min | Sat Jan 01 17:33:01 2000 PST
  1369. Fri Dec 31 17:32:01 1999 PST | @ 1 day 2 hours 3 mins 4 secs | Sat Jan 01 19:35:05 2000 PST
  1370. Sat Jan 01 17:32:01 2000 PST | @ 5 hours | Sat Jan 01 22:32:01 2000 PST
  1371. Sat Jan 01 17:32:01 2000 PST | @ 1 day 2 hours 3 mins 4 secs | Sun Jan 02 19:35:05 2000 PST
  1372. Fri Dec 31 17:32:01 1999 PST | @ 10 days | Mon Jan 10 17:32:01 2000 PST
  1373. Sat Jan 01 17:32:01 2000 PST | @ 10 days | Tue Jan 11 17:32:01 2000 PST
  1374. Wed Mar 15 02:14:05 2000 PST | @ 14 secs ago | Wed Mar 15 02:13:51 2000 PST
  1375. Wed Mar 15 02:14:05 2000 PST | @ 1 min | Wed Mar 15 02:15:05 2000 PST
  1376. Wed Mar 15 03:14:04 2000 PST | @ 14 secs ago | Wed Mar 15 03:13:50 2000 PST
  1377. Wed Mar 15 03:14:04 2000 PST | @ 1 min | Wed Mar 15 03:15:04 2000 PST
  1378. Wed Mar 15 02:14:05 2000 PST | @ 5 hours | Wed Mar 15 07:14:05 2000 PST
  1379. Wed Mar 15 08:14:01 2000 PST | @ 14 secs ago | Wed Mar 15 08:13:47 2000 PST
  1380. Wed Mar 15 03:14:04 2000 PST | @ 5 hours | Wed Mar 15 08:14:04 2000 PST
  1381. Wed Mar 15 08:14:01 2000 PST | @ 1 min | Wed Mar 15 08:15:01 2000 PST
  1382. Wed Mar 15 12:14:03 2000 PST | @ 14 secs ago | Wed Mar 15 12:13:49 2000 PST
  1383. Wed Mar 15 12:14:03 2000 PST | @ 1 min | Wed Mar 15 12:15:03 2000 PST
  1384. Wed Mar 15 13:14:02 2000 PST | @ 14 secs ago | Wed Mar 15 13:13:48 2000 PST
  1385. Wed Mar 15 08:14:01 2000 PST | @ 5 hours | Wed Mar 15 13:14:01 2000 PST
  1386. Wed Mar 15 13:14:02 2000 PST | @ 1 min | Wed Mar 15 13:15:02 2000 PST
  1387. Wed Mar 15 12:14:03 2000 PST | @ 5 hours | Wed Mar 15 17:14:03 2000 PST
  1388. Wed Mar 15 13:14:02 2000 PST | @ 5 hours | Wed Mar 15 18:14:02 2000 PST
  1389. Wed Mar 15 02:14:05 2000 PST | @ 1 day 2 hours 3 mins 4 secs | Thu Mar 16 04:17:09 2000 PST
  1390. Wed Mar 15 03:14:04 2000 PST | @ 1 day 2 hours 3 mins 4 secs | Thu Mar 16 05:17:08 2000 PST
  1391. Wed Mar 15 08:14:01 2000 PST | @ 1 day 2 hours 3 mins 4 secs | Thu Mar 16 10:17:05 2000 PST
  1392. Wed Mar 15 12:14:03 2000 PST | @ 1 day 2 hours 3 mins 4 secs | Thu Mar 16 14:17:07 2000 PST
  1393. Wed Mar 15 13:14:02 2000 PST | @ 1 day 2 hours 3 mins 4 secs | Thu Mar 16 15:17:06 2000 PST
  1394. Wed Mar 15 02:14:05 2000 PST | @ 10 days | Sat Mar 25 02:14:05 2000 PST
  1395. Wed Mar 15 03:14:04 2000 PST | @ 10 days | Sat Mar 25 03:14:04 2000 PST
  1396. Wed Mar 15 08:14:01 2000 PST | @ 10 days | Sat Mar 25 08:14:01 2000 PST
  1397. Wed Mar 15 12:14:03 2000 PST | @ 10 days | Sat Mar 25 12:14:03 2000 PST
  1398. Wed Mar 15 13:14:02 2000 PST | @ 10 days | Sat Mar 25 13:14:02 2000 PST
  1399. Fri Dec 31 17:32:01 1999 PST | @ 3 mons | Fri Mar 31 17:32:01 2000 PST
  1400. Sat Jan 01 17:32:01 2000 PST | @ 3 mons | Sat Apr 01 17:32:01 2000 PST
  1401. Fri Dec 31 17:32:01 1999 PST | @ 5 mons | Wed May 31 17:32:01 2000 PDT
  1402. Fri Dec 31 17:32:01 1999 PST | @ 5 mons 12 hours | Thu Jun 01 05:32:01 2000 PDT
  1403. Sat Jan 01 17:32:01 2000 PST | @ 5 mons | Thu Jun 01 17:32:01 2000 PDT
  1404. Sat Jan 01 17:32:01 2000 PST | @ 5 mons 12 hours | Fri Jun 02 05:32:01 2000 PDT
  1405. Wed Mar 15 02:14:05 2000 PST | @ 3 mons | Thu Jun 15 02:14:05 2000 PDT
  1406. Wed Mar 15 03:14:04 2000 PST | @ 3 mons | Thu Jun 15 03:14:04 2000 PDT
  1407. Wed Mar 15 08:14:01 2000 PST | @ 3 mons | Thu Jun 15 08:14:01 2000 PDT
  1408. Wed Mar 15 12:14:03 2000 PST | @ 3 mons | Thu Jun 15 12:14:03 2000 PDT
  1409. Wed Mar 15 13:14:02 2000 PST | @ 3 mons | Thu Jun 15 13:14:02 2000 PDT
  1410. Wed Mar 15 02:14:05 2000 PST | @ 5 mons | Tue Aug 15 02:14:05 2000 PDT
  1411. Wed Mar 15 03:14:04 2000 PST | @ 5 mons | Tue Aug 15 03:14:04 2000 PDT
  1412. Wed Mar 15 08:14:01 2000 PST | @ 5 mons | Tue Aug 15 08:14:01 2000 PDT
  1413. Wed Mar 15 12:14:03 2000 PST | @ 5 mons | Tue Aug 15 12:14:03 2000 PDT
  1414. Wed Mar 15 13:14:02 2000 PST | @ 5 mons | Tue Aug 15 13:14:02 2000 PDT
  1415. Wed Mar 15 02:14:05 2000 PST | @ 5 mons 12 hours | Tue Aug 15 14:14:05 2000 PDT
  1416. Wed Mar 15 03:14:04 2000 PST | @ 5 mons 12 hours | Tue Aug 15 15:14:04 2000 PDT
  1417. Wed Mar 15 08:14:01 2000 PST | @ 5 mons 12 hours | Tue Aug 15 20:14:01 2000 PDT
  1418. Wed Mar 15 12:14:03 2000 PST | @ 5 mons 12 hours | Wed Aug 16 00:14:03 2000 PDT
  1419. Wed Mar 15 13:14:02 2000 PST | @ 5 mons 12 hours | Wed Aug 16 01:14:02 2000 PDT
  1420. Sun Dec 31 17:32:01 2000 PST | @ 14 secs ago | Sun Dec 31 17:31:47 2000 PST
  1421. Sun Dec 31 17:32:01 2000 PST | @ 1 min | Sun Dec 31 17:33:01 2000 PST
  1422. Sun Dec 31 17:32:01 2000 PST | @ 5 hours | Sun Dec 31 22:32:01 2000 PST
  1423. Mon Jan 01 17:32:01 2001 PST | @ 14 secs ago | Mon Jan 01 17:31:47 2001 PST
  1424. Mon Jan 01 17:32:01 2001 PST | @ 1 min | Mon Jan 01 17:33:01 2001 PST
  1425. Sun Dec 31 17:32:01 2000 PST | @ 1 day 2 hours 3 mins 4 secs | Mon Jan 01 19:35:05 2001 PST
  1426. Mon Jan 01 17:32:01 2001 PST | @ 5 hours | Mon Jan 01 22:32:01 2001 PST
  1427. Mon Jan 01 17:32:01 2001 PST | @ 1 day 2 hours 3 mins 4 secs | Tue Jan 02 19:35:05 2001 PST
  1428. Sun Dec 31 17:32:01 2000 PST | @ 10 days | Wed Jan 10 17:32:01 2001 PST
  1429. Mon Jan 01 17:32:01 2001 PST | @ 10 days | Thu Jan 11 17:32:01 2001 PST
  1430. Sun Dec 31 17:32:01 2000 PST | @ 3 mons | Sat Mar 31 17:32:01 2001 PST
  1431. Mon Jan 01 17:32:01 2001 PST | @ 3 mons | Sun Apr 01 17:32:01 2001 PDT
  1432. Sun Dec 31 17:32:01 2000 PST | @ 5 mons | Thu May 31 17:32:01 2001 PDT
  1433. Sun Dec 31 17:32:01 2000 PST | @ 5 mons 12 hours | Fri Jun 01 05:32:01 2001 PDT
  1434. Mon Jan 01 17:32:01 2001 PST | @ 5 mons | Fri Jun 01 17:32:01 2001 PDT
  1435. Mon Jan 01 17:32:01 2001 PST | @ 5 mons 12 hours | Sat Jun 02 05:32:01 2001 PDT
  1436. Sat Sep 22 18:19:20 2001 PDT | @ 14 secs ago | Sat Sep 22 18:19:06 2001 PDT
  1437. Sat Sep 22 18:19:20 2001 PDT | @ 1 min | Sat Sep 22 18:20:20 2001 PDT
  1438. Sat Sep 22 18:19:20 2001 PDT | @ 5 hours | Sat Sep 22 23:19:20 2001 PDT
  1439. Sat Sep 22 18:19:20 2001 PDT | @ 1 day 2 hours 3 mins 4 secs | Sun Sep 23 20:22:24 2001 PDT
  1440. Sat Sep 22 18:19:20 2001 PDT | @ 10 days | Tue Oct 02 18:19:20 2001 PDT
  1441. Sat Sep 22 18:19:20 2001 PDT | @ 3 mons | Sat Dec 22 18:19:20 2001 PST
  1442. Sat Sep 22 18:19:20 2001 PDT | @ 5 mons | Fri Feb 22 18:19:20 2002 PST
  1443. Sat Sep 22 18:19:20 2001 PDT | @ 5 mons 12 hours | Sat Feb 23 06:19:20 2002 PST
  1444. Wed Feb 28 17:32:01 1996 PST | @ 6 years | Thu Feb 28 17:32:01 2002 PST
  1445. Thu Feb 29 17:32:01 1996 PST | @ 6 years | Thu Feb 28 17:32:01 2002 PST
  1446. Fri Mar 01 17:32:01 1996 PST | @ 6 years | Fri Mar 01 17:32:01 2002 PST
  1447. Mon Dec 30 17:32:01 1996 PST | @ 6 years | Mon Dec 30 17:32:01 2002 PST
  1448. Tue Dec 31 17:32:01 1996 PST | @ 6 years | Tue Dec 31 17:32:01 2002 PST
  1449. Thu Jan 01 00:00:00 1970 PST | @ 34 years | Thu Jan 01 00:00:00 2004 PST
  1450. Fri Dec 31 17:32:01 1999 PST | @ 6 years | Sat Dec 31 17:32:01 2005 PST
  1451. Sat Jan 01 17:32:01 2000 PST | @ 6 years | Sun Jan 01 17:32:01 2006 PST
  1452. Wed Mar 15 02:14:05 2000 PST | @ 6 years | Wed Mar 15 02:14:05 2006 PST
  1453. Wed Mar 15 03:14:04 2000 PST | @ 6 years | Wed Mar 15 03:14:04 2006 PST
  1454. Wed Mar 15 08:14:01 2000 PST | @ 6 years | Wed Mar 15 08:14:01 2006 PST
  1455. Wed Mar 15 12:14:03 2000 PST | @ 6 years | Wed Mar 15 12:14:03 2006 PST
  1456. Wed Mar 15 13:14:02 2000 PST | @ 6 years | Wed Mar 15 13:14:02 2006 PST
  1457. Sun Dec 31 17:32:01 2000 PST | @ 6 years | Sun Dec 31 17:32:01 2006 PST
  1458. Mon Jan 01 17:32:01 2001 PST | @ 6 years | Mon Jan 01 17:32:01 2007 PST
  1459. Sat Sep 22 18:19:20 2001 PDT | @ 6 years | Sat Sep 22 18:19:20 2007 PDT
  1460. Wed Feb 28 17:32:01 1996 PST | @ 34 years | Thu Feb 28 17:32:01 2030 PST
  1461. Thu Feb 29 17:32:01 1996 PST | @ 34 years | Thu Feb 28 17:32:01 2030 PST
  1462. Fri Mar 01 17:32:01 1996 PST | @ 34 years | Fri Mar 01 17:32:01 2030 PST
  1463. Mon Dec 30 17:32:01 1996 PST | @ 34 years | Mon Dec 30 17:32:01 2030 PST
  1464. Tue Dec 31 17:32:01 1996 PST | @ 34 years | Tue Dec 31 17:32:01 2030 PST
  1465. Fri Dec 31 17:32:01 1999 PST | @ 34 years | Sat Dec 31 17:32:01 2033 PST
  1466. Sat Jan 01 17:32:01 2000 PST | @ 34 years | Sun Jan 01 17:32:01 2034 PST
  1467. Wed Mar 15 02:14:05 2000 PST | @ 34 years | Wed Mar 15 02:14:05 2034 PDT
  1468. Wed Mar 15 03:14:04 2000 PST | @ 34 years | Wed Mar 15 03:14:04 2034 PDT
  1469. Wed Mar 15 08:14:01 2000 PST | @ 34 years | Wed Mar 15 08:14:01 2034 PDT
  1470. Wed Mar 15 12:14:03 2000 PST | @ 34 years | Wed Mar 15 12:14:03 2034 PDT
  1471. Wed Mar 15 13:14:02 2000 PST | @ 34 years | Wed Mar 15 13:14:02 2034 PDT
  1472. Sun Dec 31 17:32:01 2000 PST | @ 34 years | Sun Dec 31 17:32:01 2034 PST
  1473. Mon Jan 01 17:32:01 2001 PST | @ 34 years | Mon Jan 01 17:32:01 2035 PST
  1474. Sat Sep 22 18:19:20 2001 PDT | @ 34 years | Sat Sep 22 18:19:20 2035 PDT
  1475. (160 rows)
  1476. SELECT d.f1 AS "timestamp", t.f1 AS "interval", d.f1 - t.f1 AS minus
  1477. FROM TEMP_TIMESTAMP d, INTERVAL_TBL t
  1478. WHERE isfinite(d.f1)
  1479. ORDER BY minus, "timestamp", "interval";
  1480. timestamp | interval | minus
  1481. ------------------------------+-------------------------------+------------------------------
  1482. Thu Jan 01 00:00:00 1970 PST | @ 34 years | Wed Jan 01 00:00:00 1936 PST
  1483. Wed Feb 28 17:32:01 1996 PST | @ 34 years | Wed Feb 28 17:32:01 1962 PST
  1484. Thu Feb 29 17:32:01 1996 PST | @ 34 years | Wed Feb 28 17:32:01 1962 PST
  1485. Fri Mar 01 17:32:01 1996 PST | @ 34 years | Thu Mar 01 17:32:01 1962 PST
  1486. Mon Dec 30 17:32:01 1996 PST | @ 34 years | Sun Dec 30 17:32:01 1962 PST
  1487. Tue Dec 31 17:32:01 1996 PST | @ 34 years | Mon Dec 31 17:32:01 1962 PST
  1488. Thu Jan 01 00:00:00 1970 PST | @ 6 years | Wed Jan 01 00:00:00 1964 PST
  1489. Fri Dec 31 17:32:01 1999 PST | @ 34 years | Fri Dec 31 17:32:01 1965 PST
  1490. Sat Jan 01 17:32:01 2000 PST | @ 34 years | Sat Jan 01 17:32:01 1966 PST
  1491. Wed Mar 15 02:14:05 2000 PST | @ 34 years | Tue Mar 15 02:14:05 1966 PST
  1492. Wed Mar 15 03:14:04 2000 PST | @ 34 years | Tue Mar 15 03:14:04 1966 PST
  1493. Wed Mar 15 08:14:01 2000 PST | @ 34 years | Tue Mar 15 08:14:01 1966 PST
  1494. Wed Mar 15 12:14:03 2000 PST | @ 34 years | Tue Mar 15 12:14:03 1966 PST
  1495. Wed Mar 15 13:14:02 2000 PST | @ 34 years | Tue Mar 15 13:14:02 1966 PST
  1496. Sun Dec 31 17:32:01 2000 PST | @ 34 years | Sat Dec 31 17:32:01 1966 PST
  1497. Mon Jan 01 17:32:01 2001 PST | @ 34 years | Sun Jan 01 17:32:01 1967 PST
  1498. Sat Sep 22 18:19:20 2001 PDT | @ 34 years | Fri Sep 22 18:19:20 1967 PDT
  1499. Thu Jan 01 00:00:00 1970 PST | @ 5 mons 12 hours | Thu Jul 31 12:00:00 1969 PDT
  1500. Thu Jan 01 00:00:00 1970 PST | @ 5 mons | Fri Aug 01 00:00:00 1969 PDT
  1501. Thu Jan 01 00:00:00 1970 PST | @ 3 mons | Wed Oct 01 00:00:00 1969 PDT
  1502. Thu Jan 01 00:00:00 1970 PST | @ 10 days | Mon Dec 22 00:00:00 1969 PST
  1503. Thu Jan 01 00:00:00 1970 PST | @ 1 day 2 hours 3 mins 4 secs | Tue Dec 30 21:56:56 1969 PST
  1504. Thu Jan 01 00:00:00 1970 PST | @ 5 hours | Wed Dec 31 19:00:00 1969 PST
  1505. Thu Jan 01 00:00:00 1970 PST | @ 1 min | Wed Dec 31 23:59:00 1969 PST
  1506. Thu Jan 01 00:00:00 1970 PST | @ 14 secs ago | Thu Jan 01 00:00:14 1970 PST
  1507. Wed Feb 28 17:32:01 1996 PST | @ 6 years | Wed Feb 28 17:32:01 1990 PST
  1508. Thu Feb 29 17:32:01 1996 PST | @ 6 years | Wed Feb 28 17:32:01 1990 PST
  1509. Fri Mar 01 17:32:01 1996 PST | @ 6 years | Thu Mar 01 17:32:01 1990 PST
  1510. Mon Dec 30 17:32:01 1996 PST | @ 6 years | Sun Dec 30 17:32:01 1990 PST
  1511. Tue Dec 31 17:32:01 1996 PST | @ 6 years | Mon Dec 31 17:32:01 1990 PST
  1512. Fri Dec 31 17:32:01 1999 PST | @ 6 years | Fri Dec 31 17:32:01 1993 PST
  1513. Sat Jan 01 17:32:01 2000 PST | @ 6 years | Sat Jan 01 17:32:01 1994 PST
  1514. Wed Mar 15 02:14:05 2000 PST | @ 6 years | Tue Mar 15 02:14:05 1994 PST
  1515. Wed Mar 15 03:14:04 2000 PST | @ 6 years | Tue Mar 15 03:14:04 1994 PST
  1516. Wed Mar 15 08:14:01 2000 PST | @ 6 years | Tue Mar 15 08:14:01 1994 PST
  1517. Wed Mar 15 12:14:03 2000 PST | @ 6 years | Tue Mar 15 12:14:03 1994 PST
  1518. Wed Mar 15 13:14:02 2000 PST | @ 6 years | Tue Mar 15 13:14:02 1994 PST
  1519. Sun Dec 31 17:32:01 2000 PST | @ 6 years | Sat Dec 31 17:32:01 1994 PST
  1520. Mon Jan 01 17:32:01 2001 PST | @ 6 years | Sun Jan 01 17:32:01 1995 PST
  1521. Sat Sep 22 18:19:20 2001 PDT | @ 6 years | Fri Sep 22 18:19:20 1995 PDT
  1522. Wed Feb 28 17:32:01 1996 PST | @ 5 mons 12 hours | Thu Sep 28 05:32:01 1995 PDT
  1523. Wed Feb 28 17:32:01 1996 PST | @ 5 mons | Thu Sep 28 17:32:01 1995 PDT
  1524. Thu Feb 29 17:32:01 1996 PST | @ 5 mons 12 hours | Fri Sep 29 05:32:01 1995 PDT
  1525. Thu Feb 29 17:32:01 1996 PST | @ 5 mons | Fri Sep 29 17:32:01 1995 PDT
  1526. Fri Mar 01 17:32:01 1996 PST | @ 5 mons 12 hours | Sun Oct 01 05:32:01 1995 PDT
  1527. Fri Mar 01 17:32:01 1996 PST | @ 5 mons | Sun Oct 01 17:32:01 1995 PDT
  1528. Wed Feb 28 17:32:01 1996 PST | @ 3 mons | Tue Nov 28 17:32:01 1995 PST
  1529. Thu Feb 29 17:32:01 1996 PST | @ 3 mons | Wed Nov 29 17:32:01 1995 PST
  1530. Fri Mar 01 17:32:01 1996 PST | @ 3 mons | Fri Dec 01 17:32:01 1995 PST
  1531. Wed Feb 28 17:32:01 1996 PST | @ 10 days | Sun Feb 18 17:32:01 1996 PST
  1532. Thu Feb 29 17:32:01 1996 PST | @ 10 days | Mon Feb 19 17:32:01 1996 PST
  1533. Fri Mar 01 17:32:01 1996 PST | @ 10 days | Tue Feb 20 17:32:01 1996 PST
  1534. Wed Feb 28 17:32:01 1996 PST | @ 1 day 2 hours 3 mins 4 secs | Tue Feb 27 15:28:57 1996 PST
  1535. Wed Feb 28 17:32:01 1996 PST | @ 5 hours | Wed Feb 28 12:32:01 1996 PST
  1536. Thu Feb 29 17:32:01 1996 PST | @ 1 day 2 hours 3 mins 4 secs | Wed Feb 28 15:28:57 1996 PST
  1537. Wed Feb 28 17:32:01 1996 PST | @ 1 min | Wed Feb 28 17:31:01 1996 PST
  1538. Wed Feb 28 17:32:01 1996 PST | @ 14 secs ago | Wed Feb 28 17:32:15 1996 PST
  1539. Thu Feb 29 17:32:01 1996 PST | @ 5 hours | Thu Feb 29 12:32:01 1996 PST
  1540. Fri Mar 01 17:32:01 1996 PST | @ 1 day 2 hours 3 mins 4 secs | Thu Feb 29 15:28:57 1996 PST
  1541. Thu Feb 29 17:32:01 1996 PST | @ 1 min | Thu Feb 29 17:31:01 1996 PST
  1542. Thu Feb 29 17:32:01 1996 PST | @ 14 secs ago | Thu Feb 29 17:32:15 1996 PST
  1543. Fri Mar 01 17:32:01 1996 PST | @ 5 hours | Fri Mar 01 12:32:01 1996 PST
  1544. Fri Mar 01 17:32:01 1996 PST | @ 1 min | Fri Mar 01 17:31:01 1996 PST
  1545. Fri Mar 01 17:32:01 1996 PST | @ 14 secs ago | Fri Mar 01 17:32:15 1996 PST
  1546. Mon Dec 30 17:32:01 1996 PST | @ 5 mons 12 hours | Tue Jul 30 05:32:01 1996 PDT
  1547. Mon Dec 30 17:32:01 1996 PST | @ 5 mons | Tue Jul 30 17:32:01 1996 PDT
  1548. Tue Dec 31 17:32:01 1996 PST | @ 5 mons 12 hours | Wed Jul 31 05:32:01 1996 PDT
  1549. Tue Dec 31 17:32:01 1996 PST | @ 5 mons | Wed Jul 31 17:32:01 1996 PDT
  1550. Mon Dec 30 17:32:01 1996 PST | @ 3 mons | Mon Sep 30 17:32:01 1996 PDT
  1551. Tue Dec 31 17:32:01 1996 PST | @ 3 mons | Mon Sep 30 17:32:01 1996 PDT
  1552. Mon Dec 30 17:32:01 1996 PST | @ 10 days | Fri Dec 20 17:32:01 1996 PST
  1553. Tue Dec 31 17:32:01 1996 PST | @ 10 days | Sat Dec 21 17:32:01 1996 PST
  1554. Mon Dec 30 17:32:01 1996 PST | @ 1 day 2 hours 3 mins 4 secs | Sun Dec 29 15:28:57 1996 PST
  1555. Mon Dec 30 17:32:01 1996 PST | @ 5 hours | Mon Dec 30 12:32:01 1996 PST
  1556. Tue Dec 31 17:32:01 1996 PST | @ 1 day 2 hours 3 mins 4 secs | Mon Dec 30 15:28:57 1996 PST
  1557. Mon Dec 30 17:32:01 1996 PST | @ 1 min | Mon Dec 30 17:31:01 1996 PST
  1558. Mon Dec 30 17:32:01 1996 PST | @ 14 secs ago | Mon Dec 30 17:32:15 1996 PST
  1559. Tue Dec 31 17:32:01 1996 PST | @ 5 hours | Tue Dec 31 12:32:01 1996 PST
  1560. Tue Dec 31 17:32:01 1996 PST | @ 1 min | Tue Dec 31 17:31:01 1996 PST
  1561. Tue Dec 31 17:32:01 1996 PST | @ 14 secs ago | Tue Dec 31 17:32:15 1996 PST
  1562. Fri Dec 31 17:32:01 1999 PST | @ 5 mons 12 hours | Sat Jul 31 05:32:01 1999 PDT
  1563. Fri Dec 31 17:32:01 1999 PST | @ 5 mons | Sat Jul 31 17:32:01 1999 PDT
  1564. Sat Jan 01 17:32:01 2000 PST | @ 5 mons 12 hours | Sun Aug 01 05:32:01 1999 PDT
  1565. Sat Jan 01 17:32:01 2000 PST | @ 5 mons | Sun Aug 01 17:32:01 1999 PDT
  1566. Fri Dec 31 17:32:01 1999 PST | @ 3 mons | Thu Sep 30 17:32:01 1999 PDT
  1567. Sat Jan 01 17:32:01 2000 PST | @ 3 mons | Fri Oct 01 17:32:01 1999 PDT
  1568. Wed Mar 15 02:14:05 2000 PST | @ 5 mons 12 hours | Thu Oct 14 14:14:05 1999 PDT
  1569. Wed Mar 15 03:14:04 2000 PST | @ 5 mons 12 hours | Thu Oct 14 15:14:04 1999 PDT
  1570. Wed Mar 15 08:14:01 2000 PST | @ 5 mons 12 hours | Thu Oct 14 20:14:01 1999 PDT
  1571. Wed Mar 15 12:14:03 2000 PST | @ 5 mons 12 hours | Fri Oct 15 00:14:03 1999 PDT
  1572. Wed Mar 15 13:14:02 2000 PST | @ 5 mons 12 hours | Fri Oct 15 01:14:02 1999 PDT
  1573. Wed Mar 15 02:14:05 2000 PST | @ 5 mons | Fri Oct 15 02:14:05 1999 PDT
  1574. Wed Mar 15 03:14:04 2000 PST | @ 5 mons | Fri Oct 15 03:14:04 1999 PDT
  1575. Wed Mar 15 08:14:01 2000 PST | @ 5 mons | Fri Oct 15 08:14:01 1999 PDT
  1576. Wed Mar 15 12:14:03 2000 PST | @ 5 mons | Fri Oct 15 12:14:03 1999 PDT
  1577. Wed Mar 15 13:14:02 2000 PST | @ 5 mons | Fri Oct 15 13:14:02 1999 PDT
  1578. Wed Mar 15 02:14:05 2000 PST | @ 3 mons | Wed Dec 15 02:14:05 1999 PST
  1579. Wed Mar 15 03:14:04 2000 PST | @ 3 mons | Wed Dec 15 03:14:04 1999 PST
  1580. Wed Mar 15 08:14:01 2000 PST | @ 3 mons | Wed Dec 15 08:14:01 1999 PST
  1581. Wed Mar 15 12:14:03 2000 PST | @ 3 mons | Wed Dec 15 12:14:03 1999 PST
  1582. Wed Mar 15 13:14:02 2000 PST | @ 3 mons | Wed Dec 15 13:14:02 1999 PST
  1583. Fri Dec 31 17:32:01 1999 PST | @ 10 days | Tue Dec 21 17:32:01 1999 PST
  1584. Sat Jan 01 17:32:01 2000 PST | @ 10 days | Wed Dec 22 17:32:01 1999 PST
  1585. Fri Dec 31 17:32:01 1999 PST | @ 1 day 2 hours 3 mins 4 secs | Thu Dec 30 15:28:57 1999 PST
  1586. Fri Dec 31 17:32:01 1999 PST | @ 5 hours | Fri Dec 31 12:32:01 1999 PST
  1587. Sat Jan 01 17:32:01 2000 PST | @ 1 day 2 hours 3 mins 4 secs | Fri Dec 31 15:28:57 1999 PST
  1588. Fri Dec 31 17:32:01 1999 PST | @ 1 min | Fri Dec 31 17:31:01 1999 PST
  1589. Fri Dec 31 17:32:01 1999 PST | @ 14 secs ago | Fri Dec 31 17:32:15 1999 PST
  1590. Sat Jan 01 17:32:01 2000 PST | @ 5 hours | Sat Jan 01 12:32:01 2000 PST
  1591. Sat Jan 01 17:32:01 2000 PST | @ 1 min | Sat Jan 01 17:31:01 2000 PST
  1592. Sat Jan 01 17:32:01 2000 PST | @ 14 secs ago | Sat Jan 01 17:32:15 2000 PST
  1593. Wed Mar 15 02:14:05 2000 PST | @ 10 days | Sun Mar 05 02:14:05 2000 PST
  1594. Wed Mar 15 03:14:04 2000 PST | @ 10 days | Sun Mar 05 03:14:04 2000 PST
  1595. Wed Mar 15 08:14:01 2000 PST | @ 10 days | Sun Mar 05 08:14:01 2000 PST
  1596. Wed Mar 15 12:14:03 2000 PST | @ 10 days | Sun Mar 05 12:14:03 2000 PST
  1597. Wed Mar 15 13:14:02 2000 PST | @ 10 days | Sun Mar 05 13:14:02 2000 PST
  1598. Wed Mar 15 02:14:05 2000 PST | @ 1 day 2 hours 3 mins 4 secs | Tue Mar 14 00:11:01 2000 PST
  1599. Wed Mar 15 03:14:04 2000 PST | @ 1 day 2 hours 3 mins 4 secs | Tue Mar 14 01:11:00 2000 PST
  1600. Wed Mar 15 08:14:01 2000 PST | @ 1 day 2 hours 3 mins 4 secs | Tue Mar 14 06:10:57 2000 PST
  1601. Wed Mar 15 12:14:03 2000 PST | @ 1 day 2 hours 3 mins 4 secs | Tue Mar 14 10:10:59 2000 PST
  1602. Wed Mar 15 13:14:02 2000 PST | @ 1 day 2 hours 3 mins 4 secs | Tue Mar 14 11:10:58 2000 PST
  1603. Wed Mar 15 02:14:05 2000 PST | @ 5 hours | Tue Mar 14 21:14:05 2000 PST
  1604. Wed Mar 15 03:14:04 2000 PST | @ 5 hours | Tue Mar 14 22:14:04 2000 PST
  1605. Wed Mar 15 02:14:05 2000 PST | @ 1 min | Wed Mar 15 02:13:05 2000 PST
  1606. Wed Mar 15 02:14:05 2000 PST | @ 14 secs ago | Wed Mar 15 02:14:19 2000 PST
  1607. Wed Mar 15 03:14:04 2000 PST | @ 1 min | Wed Mar 15 03:13:04 2000 PST
  1608. Wed Mar 15 08:14:01 2000 PST | @ 5 hours | Wed Mar 15 03:14:01 2000 PST
  1609. Wed Mar 15 03:14:04 2000 PST | @ 14 secs ago | Wed Mar 15 03:14:18 2000 PST
  1610. Wed Mar 15 12:14:03 2000 PST | @ 5 hours | Wed Mar 15 07:14:03 2000 PST
  1611. Wed Mar 15 08:14:01 2000 PST | @ 1 min | Wed Mar 15 08:13:01 2000 PST
  1612. Wed Mar 15 13:14:02 2000 PST | @ 5 hours | Wed Mar 15 08:14:02 2000 PST
  1613. Wed Mar 15 08:14:01 2000 PST | @ 14 secs ago | Wed Mar 15 08:14:15 2000 PST
  1614. Wed Mar 15 12:14:03 2000 PST | @ 1 min | Wed Mar 15 12:13:03 2000 PST
  1615. Wed Mar 15 12:14:03 2000 PST | @ 14 secs ago | Wed Mar 15 12:14:17 2000 PST
  1616. Wed Mar 15 13:14:02 2000 PST | @ 1 min | Wed Mar 15 13:13:02 2000 PST
  1617. Wed Mar 15 13:14:02 2000 PST | @ 14 secs ago | Wed Mar 15 13:14:16 2000 PST
  1618. Sun Dec 31 17:32:01 2000 PST | @ 5 mons 12 hours | Mon Jul 31 05:32:01 2000 PDT
  1619. Sun Dec 31 17:32:01 2000 PST | @ 5 mons | Mon Jul 31 17:32:01 2000 PDT
  1620. Mon Jan 01 17:32:01 2001 PST | @ 5 mons 12 hours | Tue Aug 01 05:32:01 2000 PDT
  1621. Mon Jan 01 17:32:01 2001 PST | @ 5 mons | Tue Aug 01 17:32:01 2000 PDT
  1622. Sun Dec 31 17:32:01 2000 PST | @ 3 mons | Sat Sep 30 17:32:01 2000 PDT
  1623. Mon Jan 01 17:32:01 2001 PST | @ 3 mons | Sun Oct 01 17:32:01 2000 PDT
  1624. Sun Dec 31 17:32:01 2000 PST | @ 10 days | Thu Dec 21 17:32:01 2000 PST
  1625. Mon Jan 01 17:32:01 2001 PST | @ 10 days | Fri Dec 22 17:32:01 2000 PST
  1626. Sun Dec 31 17:32:01 2000 PST | @ 1 day 2 hours 3 mins 4 secs | Sat Dec 30 15:28:57 2000 PST
  1627. Sun Dec 31 17:32:01 2000 PST | @ 5 hours | Sun Dec 31 12:32:01 2000 PST
  1628. Mon Jan 01 17:32:01 2001 PST | @ 1 day 2 hours 3 mins 4 secs | Sun Dec 31 15:28:57 2000 PST
  1629. Sun Dec 31 17:32:01 2000 PST | @ 1 min | Sun Dec 31 17:31:01 2000 PST
  1630. Sun Dec 31 17:32:01 2000 PST | @ 14 secs ago | Sun Dec 31 17:32:15 2000 PST
  1631. Mon Jan 01 17:32:01 2001 PST | @ 5 hours | Mon Jan 01 12:32:01 2001 PST
  1632. Mon Jan 01 17:32:01 2001 PST | @ 1 min | Mon Jan 01 17:31:01 2001 PST
  1633. Mon Jan 01 17:32:01 2001 PST | @ 14 secs ago | Mon Jan 01 17:32:15 2001 PST
  1634. Sat Sep 22 18:19:20 2001 PDT | @ 5 mons 12 hours | Sun Apr 22 06:19:20 2001 PDT
  1635. Sat Sep 22 18:19:20 2001 PDT | @ 5 mons | Sun Apr 22 18:19:20 2001 PDT
  1636. Sat Sep 22 18:19:20 2001 PDT | @ 3 mons | Fri Jun 22 18:19:20 2001 PDT
  1637. Sat Sep 22 18:19:20 2001 PDT | @ 10 days | Wed Sep 12 18:19:20 2001 PDT
  1638. Sat Sep 22 18:19:20 2001 PDT | @ 1 day 2 hours 3 mins 4 secs | Fri Sep 21 16:16:16 2001 PDT
  1639. Sat Sep 22 18:19:20 2001 PDT | @ 5 hours | Sat Sep 22 13:19:20 2001 PDT
  1640. Sat Sep 22 18:19:20 2001 PDT | @ 1 min | Sat Sep 22 18:18:20 2001 PDT
  1641. Sat Sep 22 18:19:20 2001 PDT | @ 14 secs ago | Sat Sep 22 18:19:34 2001 PDT
  1642. (160 rows)
  1643. SELECT d.f1 AS "timestamp",
  1644. timestamp with time zone '1980-01-06 00:00 GMT' AS gpstime_zero,
  1645. d.f1 - timestamp with time zone '1980-01-06 00:00 GMT' AS difference
  1646. FROM TEMP_TIMESTAMP d
  1647. ORDER BY difference;
  1648. timestamp | gpstime_zero | difference
  1649. ------------------------------+------------------------------+-------------------------------------
  1650. Thu Jan 01 00:00:00 1970 PST | Sat Jan 05 16:00:00 1980 PST | @ 3656 days 16 hours ago
  1651. Wed Feb 28 17:32:01 1996 PST | Sat Jan 05 16:00:00 1980 PST | @ 5898 days 1 hour 32 mins 1 sec
  1652. Thu Feb 29 17:32:01 1996 PST | Sat Jan 05 16:00:00 1980 PST | @ 5899 days 1 hour 32 mins 1 sec
  1653. Fri Mar 01 17:32:01 1996 PST | Sat Jan 05 16:00:00 1980 PST | @ 5900 days 1 hour 32 mins 1 sec
  1654. Mon Dec 30 17:32:01 1996 PST | Sat Jan 05 16:00:00 1980 PST | @ 6204 days 1 hour 32 mins 1 sec
  1655. Tue Dec 31 17:32:01 1996 PST | Sat Jan 05 16:00:00 1980 PST | @ 6205 days 1 hour 32 mins 1 sec
  1656. Fri Dec 31 17:32:01 1999 PST | Sat Jan 05 16:00:00 1980 PST | @ 7300 days 1 hour 32 mins 1 sec
  1657. Sat Jan 01 17:32:01 2000 PST | Sat Jan 05 16:00:00 1980 PST | @ 7301 days 1 hour 32 mins 1 sec
  1658. Wed Mar 15 02:14:05 2000 PST | Sat Jan 05 16:00:00 1980 PST | @ 7374 days 10 hours 14 mins 5 secs
  1659. Wed Mar 15 03:14:04 2000 PST | Sat Jan 05 16:00:00 1980 PST | @ 7374 days 11 hours 14 mins 4 secs
  1660. Wed Mar 15 08:14:01 2000 PST | Sat Jan 05 16:00:00 1980 PST | @ 7374 days 16 hours 14 mins 1 sec
  1661. Wed Mar 15 12:14:03 2000 PST | Sat Jan 05 16:00:00 1980 PST | @ 7374 days 20 hours 14 mins 3 secs
  1662. Wed Mar 15 13:14:02 2000 PST | Sat Jan 05 16:00:00 1980 PST | @ 7374 days 21 hours 14 mins 2 secs
  1663. Sun Dec 31 17:32:01 2000 PST | Sat Jan 05 16:00:00 1980 PST | @ 7666 days 1 hour 32 mins 1 sec
  1664. Mon Jan 01 17:32:01 2001 PST | Sat Jan 05 16:00:00 1980 PST | @ 7667 days 1 hour 32 mins 1 sec
  1665. Sat Sep 22 18:19:20 2001 PDT | Sat Jan 05 16:00:00 1980 PST | @ 7931 days 1 hour 19 mins 20 secs
  1666. (16 rows)
  1667. SELECT d1.f1 AS timestamp1, d2.f1 AS timestamp2, d1.f1 - d2.f1 AS difference
  1668. FROM TEMP_TIMESTAMP d1, TEMP_TIMESTAMP d2
  1669. ORDER BY timestamp1, timestamp2, difference;
  1670. timestamp1 | timestamp2 | difference
  1671. ------------------------------+------------------------------+-------------------------------------------
  1672. Thu Jan 01 00:00:00 1970 PST | Thu Jan 01 00:00:00 1970 PST | @ 0
  1673. Thu Jan 01 00:00:00 1970 PST | Wed Feb 28 17:32:01 1996 PST | @ 9554 days 17 hours 32 mins 1 sec ago
  1674. Thu Jan 01 00:00:00 1970 PST | Thu Feb 29 17:32:01 1996 PST | @ 9555 days 17 hours 32 mins 1 sec ago
  1675. Thu Jan 01 00:00:00 1970 PST | Fri Mar 01 17:32:01 1996 PST | @ 9556 days 17 hours 32 mins 1 sec ago
  1676. Thu Jan 01 00:00:00 1970 PST | Mon Dec 30 17:32:01 1996 PST | @ 9860 days 17 hours 32 mins 1 sec ago
  1677. Thu Jan 01 00:00:00 1970 PST | Tue Dec 31 17:32:01 1996 PST | @ 9861 days 17 hours 32 mins 1 sec ago
  1678. Thu Jan 01 00:00:00 1970 PST | Fri Dec 31 17:32:01 1999 PST | @ 10956 days 17 hours 32 mins 1 sec ago
  1679. Thu Jan 01 00:00:00 1970 PST | Sat Jan 01 17:32:01 2000 PST | @ 10957 days 17 hours 32 mins 1 sec ago
  1680. Thu Jan 01 00:00:00 1970 PST | Wed Mar 15 02:14:05 2000 PST | @ 11031 days 2 hours 14 mins 5 secs ago
  1681. Thu Jan 01 00:00:00 1970 PST | Wed Mar 15 03:14:04 2000 PST | @ 11031 days 3 hours 14 mins 4 secs ago
  1682. Thu Jan 01 00:00:00 1970 PST | Wed Mar 15 08:14:01 2000 PST | @ 11031 days 8 hours 14 mins 1 sec ago
  1683. Thu Jan 01 00:00:00 1970 PST | Wed Mar 15 12:14:03 2000 PST | @ 11031 days 12 hours 14 mins 3 secs ago
  1684. Thu Jan 01 00:00:00 1970 PST | Wed Mar 15 13:14:02 2000 PST | @ 11031 days 13 hours 14 mins 2 secs ago
  1685. Thu Jan 01 00:00:00 1970 PST | Sun Dec 31 17:32:01 2000 PST | @ 11322 days 17 hours 32 mins 1 sec ago
  1686. Thu Jan 01 00:00:00 1970 PST | Mon Jan 01 17:32:01 2001 PST | @ 11323 days 17 hours 32 mins 1 sec ago
  1687. Thu Jan 01 00:00:00 1970 PST | Sat Sep 22 18:19:20 2001 PDT | @ 11587 days 17 hours 19 mins 20 secs ago
  1688. Wed Feb 28 17:32:01 1996 PST | Thu Jan 01 00:00:00 1970 PST | @ 9554 days 17 hours 32 mins 1 sec
  1689. Wed Feb 28 17:32:01 1996 PST | Wed Feb 28 17:32:01 1996 PST | @ 0
  1690. Wed Feb 28 17:32:01 1996 PST | Thu Feb 29 17:32:01 1996 PST | @ 1 day ago
  1691. Wed Feb 28 17:32:01 1996 PST | Fri Mar 01 17:32:01 1996 PST | @ 2 days ago
  1692. Wed Feb 28 17:32:01 1996 PST | Mon Dec 30 17:32:01 1996 PST | @ 306 days ago
  1693. Wed Feb 28 17:32:01 1996 PST | Tue Dec 31 17:32:01 1996 PST | @ 307 days ago
  1694. Wed Feb 28 17:32:01 1996 PST | Fri Dec 31 17:32:01 1999 PST | @ 1402 days ago
  1695. Wed Feb 28 17:32:01 1996 PST | Sat Jan 01 17:32:01 2000 PST | @ 1403 days ago
  1696. Wed Feb 28 17:32:01 1996 PST | Wed Mar 15 02:14:05 2000 PST | @ 1476 days 8 hours 42 mins 4 secs ago
  1697. Wed Feb 28 17:32:01 1996 PST | Wed Mar 15 03:14:04 2000 PST | @ 1476 days 9 hours 42 mins 3 secs ago
  1698. Wed Feb 28 17:32:01 1996 PST | Wed Mar 15 08:14:01 2000 PST | @ 1476 days 14 hours 42 mins ago
  1699. Wed Feb 28 17:32:01 1996 PST | Wed Mar 15 12:14:03 2000 PST | @ 1476 days 18 hours 42 mins 2 secs ago
  1700. Wed Feb 28 17:32:01 1996 PST | Wed Mar 15 13:14:02 2000 PST | @ 1476 days 19 hours 42 mins 1 sec ago
  1701. Wed Feb 28 17:32:01 1996 PST | Sun Dec 31 17:32:01 2000 PST | @ 1768 days ago
  1702. Wed Feb 28 17:32:01 1996 PST | Mon Jan 01 17:32:01 2001 PST | @ 1769 days ago
  1703. Wed Feb 28 17:32:01 1996 PST | Sat Sep 22 18:19:20 2001 PDT | @ 2032 days 23 hours 47 mins 19 secs ago
  1704. Thu Feb 29 17:32:01 1996 PST | Thu Jan 01 00:00:00 1970 PST | @ 9555 days 17 hours 32 mins 1 sec
  1705. Thu Feb 29 17:32:01 1996 PST | Wed Feb 28 17:32:01 1996 PST | @ 1 day
  1706. Thu Feb 29 17:32:01 1996 PST | Thu Feb 29 17:32:01 1996 PST | @ 0
  1707. Thu Feb 29 17:32:01 1996 PST | Fri Mar 01 17:32:01 1996 PST | @ 1 day ago
  1708. Thu Feb 29 17:32:01 1996 PST | Mon Dec 30 17:32:01 1996 PST | @ 305 days ago
  1709. Thu Feb 29 17:32:01 1996 PST | Tue Dec 31 17:32:01 1996 PST | @ 306 days ago
  1710. Thu Feb 29 17:32:01 1996 PST | Fri Dec 31 17:32:01 1999 PST | @ 1401 days ago
  1711. Thu Feb 29 17:32:01 1996 PST | Sat Jan 01 17:32:01 2000 PST | @ 1402 days ago
  1712. Thu Feb 29 17:32:01 1996 PST | Wed Mar 15 02:14:05 2000 PST | @ 1475 days 8 hours 42 mins 4 secs ago
  1713. Thu Feb 29 17:32:01 1996 PST | Wed Mar 15 03:14:04 2000 PST | @ 1475 days 9 hours 42 mins 3 secs ago
  1714. Thu Feb 29 17:32:01 1996 PST | Wed Mar 15 08:14:01 2000 PST | @ 1475 days 14 hours 42 mins ago
  1715. Thu Feb 29 17:32:01 1996 PST | Wed Mar 15 12:14:03 2000 PST | @ 1475 days 18 hours 42 mins 2 secs ago
  1716. Thu Feb 29 17:32:01 1996 PST | Wed Mar 15 13:14:02 2000 PST | @ 1475 days 19 hours 42 mins 1 sec ago
  1717. Thu Feb 29 17:32:01 1996 PST | Sun Dec 31 17:32:01 2000 PST | @ 1767 days ago
  1718. Thu Feb 29 17:32:01 1996 PST | Mon Jan 01 17:32:01 2001 PST | @ 1768 days ago
  1719. Thu Feb 29 17:32:01 1996 PST | Sat Sep 22 18:19:20 2001 PDT | @ 2031 days 23 hours 47 mins 19 secs ago
  1720. Fri Mar 01 17:32:01 1996 PST | Thu Jan 01 00:00:00 1970 PST | @ 9556 days 17 hours 32 mins 1 sec
  1721. Fri Mar 01 17:32:01 1996 PST | Wed Feb 28 17:32:01 1996 PST | @ 2 days
  1722. Fri Mar 01 17:32:01 1996 PST | Thu Feb 29 17:32:01 1996 PST | @ 1 day
  1723. Fri Mar 01 17:32:01 1996 PST | Fri Mar 01 17:32:01 1996 PST | @ 0
  1724. Fri Mar 01 17:32:01 1996 PST | Mon Dec 30 17:32:01 1996 PST | @ 304 days ago
  1725. Fri Mar 01 17:32:01 1996 PST | Tue Dec 31 17:32:01 1996 PST | @ 305 days ago
  1726. Fri Mar 01 17:32:01 1996 PST | Fri Dec 31 17:32:01 1999 PST | @ 1400 days ago
  1727. Fri Mar 01 17:32:01 1996 PST | Sat Jan 01 17:32:01 2000 PST | @ 1401 days ago
  1728. Fri Mar 01 17:32:01 1996 PST | Wed Mar 15 02:14:05 2000 PST | @ 1474 days 8 hours 42 mins 4 secs ago
  1729. Fri Mar 01 17:32:01 1996 PST | Wed Mar 15 03:14:04 2000 PST | @ 1474 days 9 hours 42 mins 3 secs ago
  1730. Fri Mar 01 17:32:01 1996 PST | Wed Mar 15 08:14:01 2000 PST | @ 1474 days 14 hours 42 mins ago
  1731. Fri Mar 01 17:32:01 1996 PST | Wed Mar 15 12:14:03 2000 PST | @ 1474 days 18 hours 42 mins 2 secs ago
  1732. Fri Mar 01 17:32:01 1996 PST | Wed Mar 15 13:14:02 2000 PST | @ 1474 days 19 hours 42 mins 1 sec ago
  1733. Fri Mar 01 17:32:01 1996 PST | Sun Dec 31 17:32:01 2000 PST | @ 1766 days ago
  1734. Fri Mar 01 17:32:01 1996 PST | Mon Jan 01 17:32:01 2001 PST | @ 1767 days ago
  1735. Fri Mar 01 17:32:01 1996 PST | Sat Sep 22 18:19:20 2001 PDT | @ 2030 days 23 hours 47 mins 19 secs ago
  1736. Mon Dec 30 17:32:01 1996 PST | Thu Jan 01 00:00:00 1970 PST | @ 9860 days 17 hours 32 mins 1 sec
  1737. Mon Dec 30 17:32:01 1996 PST | Wed Feb 28 17:32:01 1996 PST | @ 306 days
  1738. Mon Dec 30 17:32:01 1996 PST | Thu Feb 29 17:32:01 1996 PST | @ 305 days
  1739. Mon Dec 30 17:32:01 1996 PST | Fri Mar 01 17:32:01 1996 PST | @ 304 days
  1740. Mon Dec 30 17:32:01 1996 PST | Mon Dec 30 17:32:01 1996 PST | @ 0
  1741. Mon Dec 30 17:32:01 1996 PST | Tue Dec 31 17:32:01 1996 PST | @ 1 day ago
  1742. Mon Dec 30 17:32:01 1996 PST | Fri Dec 31 17:32:01 1999 PST | @ 1096 days ago
  1743. Mon Dec 30 17:32:01 1996 PST | Sat Jan 01 17:32:01 2000 PST | @ 1097 days ago
  1744. Mon Dec 30 17:32:01 1996 PST | Wed Mar 15 02:14:05 2000 PST | @ 1170 days 8 hours 42 mins 4 secs ago
  1745. Mon Dec 30 17:32:01 1996 PST | Wed Mar 15 03:14:04 2000 PST | @ 1170 days 9 hours 42 mins 3 secs ago
  1746. Mon Dec 30 17:32:01 1996 PST | Wed Mar 15 08:14:01 2000 PST | @ 1170 days 14 hours 42 mins ago
  1747. Mon Dec 30 17:32:01 1996 PST | Wed Mar 15 12:14:03 2000 PST | @ 1170 days 18 hours 42 mins 2 secs ago
  1748. Mon Dec 30 17:32:01 1996 PST | Wed Mar 15 13:14:02 2000 PST | @ 1170 days 19 hours 42 mins 1 sec ago
  1749. Mon Dec 30 17:32:01 1996 PST | Sun Dec 31 17:32:01 2000 PST | @ 1462 days ago
  1750. Mon Dec 30 17:32:01 1996 PST | Mon Jan 01 17:32:01 2001 PST | @ 1463 days ago
  1751. Mon Dec 30 17:32:01 1996 PST | Sat Sep 22 18:19:20 2001 PDT | @ 1726 days 23 hours 47 mins 19 secs ago
  1752. Tue Dec 31 17:32:01 1996 PST | Thu Jan 01 00:00:00 1970 PST | @ 9861 days 17 hours 32 mins 1 sec
  1753. Tue Dec 31 17:32:01 1996 PST | Wed Feb 28 17:32:01 1996 PST | @ 307 days
  1754. Tue Dec 31 17:32:01 1996 PST | Thu Feb 29 17:32:01 1996 PST | @ 306 days
  1755. Tue Dec 31 17:32:01 1996 PST | Fri Mar 01 17:32:01 1996 PST | @ 305 days
  1756. Tue Dec 31 17:32:01 1996 PST | Mon Dec 30 17:32:01 1996 PST | @ 1 day
  1757. Tue Dec 31 17:32:01 1996 PST | Tue Dec 31 17:32:01 1996 PST | @ 0
  1758. Tue Dec 31 17:32:01 1996 PST | Fri Dec 31 17:32:01 1999 PST | @ 1095 days ago
  1759. Tue Dec 31 17:32:01 1996 PST | Sat Jan 01 17:32:01 2000 PST | @ 1096 days ago
  1760. Tue Dec 31 17:32:01 1996 PST | Wed Mar 15 02:14:05 2000 PST | @ 1169 days 8 hours 42 mins 4 secs ago
  1761. Tue Dec 31 17:32:01 1996 PST | Wed Mar 15 03:14:04 2000 PST | @ 1169 days 9 hours 42 mins 3 secs ago
  1762. Tue Dec 31 17:32:01 1996 PST | Wed Mar 15 08:14:01 2000 PST | @ 1169 days 14 hours 42 mins ago
  1763. Tue Dec 31 17:32:01 1996 PST | Wed Mar 15 12:14:03 2000 PST | @ 1169 days 18 hours 42 mins 2 secs ago
  1764. Tue Dec 31 17:32:01 1996 PST | Wed Mar 15 13:14:02 2000 PST | @ 1169 days 19 hours 42 mins 1 sec ago
  1765. Tue Dec 31 17:32:01 1996 PST | Sun Dec 31 17:32:01 2000 PST | @ 1461 days ago
  1766. Tue Dec 31 17:32:01 1996 PST | Mon Jan 01 17:32:01 2001 PST | @ 1462 days ago
  1767. Tue Dec 31 17:32:01 1996 PST | Sat Sep 22 18:19:20 2001 PDT | @ 1725 days 23 hours 47 mins 19 secs ago
  1768. Fri Dec 31 17:32:01 1999 PST | Thu Jan 01 00:00:00 1970 PST | @ 10956 days 17 hours 32 mins 1 sec
  1769. Fri Dec 31 17:32:01 1999 PST | Wed Feb 28 17:32:01 1996 PST | @ 1402 days
  1770. Fri Dec 31 17:32:01 1999 PST | Thu Feb 29 17:32:01 1996 PST | @ 1401 days
  1771. Fri Dec 31 17:32:01 1999 PST | Fri Mar 01 17:32:01 1996 PST | @ 1400 days
  1772. Fri Dec 31 17:32:01 1999 PST | Mon Dec 30 17:32:01 1996 PST | @ 1096 days
  1773. Fri Dec 31 17:32:01 1999 PST | Tue Dec 31 17:32:01 1996 PST | @ 1095 days
  1774. Fri Dec 31 17:32:01 1999 PST | Fri Dec 31 17:32:01 1999 PST | @ 0
  1775. Fri Dec 31 17:32:01 1999 PST | Sat Jan 01 17:32:01 2000 PST | @ 1 day ago
  1776. Fri Dec 31 17:32:01 1999 PST | Wed Mar 15 02:14:05 2000 PST | @ 74 days 8 hours 42 mins 4 secs ago
  1777. Fri Dec 31 17:32:01 1999 PST | Wed Mar 15 03:14:04 2000 PST | @ 74 days 9 hours 42 mins 3 secs ago
  1778. Fri Dec 31 17:32:01 1999 PST | Wed Mar 15 08:14:01 2000 PST | @ 74 days 14 hours 42 mins ago
  1779. Fri Dec 31 17:32:01 1999 PST | Wed Mar 15 12:14:03 2000 PST | @ 74 days 18 hours 42 mins 2 secs ago
  1780. Fri Dec 31 17:32:01 1999 PST | Wed Mar 15 13:14:02 2000 PST | @ 74 days 19 hours 42 mins 1 sec ago
  1781. Fri Dec 31 17:32:01 1999 PST | Sun Dec 31 17:32:01 2000 PST | @ 366 days ago
  1782. Fri Dec 31 17:32:01 1999 PST | Mon Jan 01 17:32:01 2001 PST | @ 367 days ago
  1783. Fri Dec 31 17:32:01 1999 PST | Sat Sep 22 18:19:20 2001 PDT | @ 630 days 23 hours 47 mins 19 secs ago
  1784. Sat Jan 01 17:32:01 2000 PST | Thu Jan 01 00:00:00 1970 PST | @ 10957 days 17 hours 32 mins 1 sec
  1785. Sat Jan 01 17:32:01 2000 PST | Wed Feb 28 17:32:01 1996 PST | @ 1403 days
  1786. Sat Jan 01 17:32:01 2000 PST | Thu Feb 29 17:32:01 1996 PST | @ 1402 days
  1787. Sat Jan 01 17:32:01 2000 PST | Fri Mar 01 17:32:01 1996 PST | @ 1401 days
  1788. Sat Jan 01 17:32:01 2000 PST | Mon Dec 30 17:32:01 1996 PST | @ 1097 days
  1789. Sat Jan 01 17:32:01 2000 PST | Tue Dec 31 17:32:01 1996 PST | @ 1096 days
  1790. Sat Jan 01 17:32:01 2000 PST | Fri Dec 31 17:32:01 1999 PST | @ 1 day
  1791. Sat Jan 01 17:32:01 2000 PST | Sat Jan 01 17:32:01 2000 PST | @ 0
  1792. Sat Jan 01 17:32:01 2000 PST | Wed Mar 15 02:14:05 2000 PST | @ 73 days 8 hours 42 mins 4 secs ago
  1793. Sat Jan 01 17:32:01 2000 PST | Wed Mar 15 03:14:04 2000 PST | @ 73 days 9 hours 42 mins 3 secs ago
  1794. Sat Jan 01 17:32:01 2000 PST | Wed Mar 15 08:14:01 2000 PST | @ 73 days 14 hours 42 mins ago
  1795. Sat Jan 01 17:32:01 2000 PST | Wed Mar 15 12:14:03 2000 PST | @ 73 days 18 hours 42 mins 2 secs ago
  1796. Sat Jan 01 17:32:01 2000 PST | Wed Mar 15 13:14:02 2000 PST | @ 73 days 19 hours 42 mins 1 sec ago
  1797. Sat Jan 01 17:32:01 2000 PST | Sun Dec 31 17:32:01 2000 PST | @ 365 days ago
  1798. Sat Jan 01 17:32:01 2000 PST | Mon Jan 01 17:32:01 2001 PST | @ 366 days ago
  1799. Sat Jan 01 17:32:01 2000 PST | Sat Sep 22 18:19:20 2001 PDT | @ 629 days 23 hours 47 mins 19 secs ago
  1800. Wed Mar 15 02:14:05 2000 PST | Thu Jan 01 00:00:00 1970 PST | @ 11031 days 2 hours 14 mins 5 secs
  1801. Wed Mar 15 02:14:05 2000 PST | Wed Feb 28 17:32:01 1996 PST | @ 1476 days 8 hours 42 mins 4 secs
  1802. Wed Mar 15 02:14:05 2000 PST | Thu Feb 29 17:32:01 1996 PST | @ 1475 days 8 hours 42 mins 4 secs
  1803. Wed Mar 15 02:14:05 2000 PST | Fri Mar 01 17:32:01 1996 PST | @ 1474 days 8 hours 42 mins 4 secs
  1804. Wed Mar 15 02:14:05 2000 PST | Mon Dec 30 17:32:01 1996 PST | @ 1170 days 8 hours 42 mins 4 secs
  1805. Wed Mar 15 02:14:05 2000 PST | Tue Dec 31 17:32:01 1996 PST | @ 1169 days 8 hours 42 mins 4 secs
  1806. Wed Mar 15 02:14:05 2000 PST | Fri Dec 31 17:32:01 1999 PST | @ 74 days 8 hours 42 mins 4 secs
  1807. Wed Mar 15 02:14:05 2000 PST | Sat Jan 01 17:32:01 2000 PST | @ 73 days 8 hours 42 mins 4 secs
  1808. Wed Mar 15 02:14:05 2000 PST | Wed Mar 15 02:14:05 2000 PST | @ 0
  1809. Wed Mar 15 02:14:05 2000 PST | Wed Mar 15 03:14:04 2000 PST | @ 59 mins 59 secs ago
  1810. Wed Mar 15 02:14:05 2000 PST | Wed Mar 15 08:14:01 2000 PST | @ 5 hours 59 mins 56 secs ago
  1811. Wed Mar 15 02:14:05 2000 PST | Wed Mar 15 12:14:03 2000 PST | @ 9 hours 59 mins 58 secs ago
  1812. Wed Mar 15 02:14:05 2000 PST | Wed Mar 15 13:14:02 2000 PST | @ 10 hours 59 mins 57 secs ago
  1813. Wed Mar 15 02:14:05 2000 PST | Sun Dec 31 17:32:01 2000 PST | @ 291 days 15 hours 17 mins 56 secs ago
  1814. Wed Mar 15 02:14:05 2000 PST | Mon Jan 01 17:32:01 2001 PST | @ 292 days 15 hours 17 mins 56 secs ago
  1815. Wed Mar 15 02:14:05 2000 PST | Sat Sep 22 18:19:20 2001 PDT | @ 556 days 15 hours 5 mins 15 secs ago
  1816. Wed Mar 15 03:14:04 2000 PST | Thu Jan 01 00:00:00 1970 PST | @ 11031 days 3 hours 14 mins 4 secs
  1817. Wed Mar 15 03:14:04 2000 PST | Wed Feb 28 17:32:01 1996 PST | @ 1476 days 9 hours 42 mins 3 secs
  1818. Wed Mar 15 03:14:04 2000 PST | Thu Feb 29 17:32:01 1996 PST | @ 1475 days 9 hours 42 mins 3 secs
  1819. Wed Mar 15 03:14:04 2000 PST | Fri Mar 01 17:32:01 1996 PST | @ 1474 days 9 hours 42 mins 3 secs
  1820. Wed Mar 15 03:14:04 2000 PST | Mon Dec 30 17:32:01 1996 PST | @ 1170 days 9 hours 42 mins 3 secs
  1821. Wed Mar 15 03:14:04 2000 PST | Tue Dec 31 17:32:01 1996 PST | @ 1169 days 9 hours 42 mins 3 secs
  1822. Wed Mar 15 03:14:04 2000 PST | Fri Dec 31 17:32:01 1999 PST | @ 74 days 9 hours 42 mins 3 secs
  1823. Wed Mar 15 03:14:04 2000 PST | Sat Jan 01 17:32:01 2000 PST | @ 73 days 9 hours 42 mins 3 secs
  1824. Wed Mar 15 03:14:04 2000 PST | Wed Mar 15 02:14:05 2000 PST | @ 59 mins 59 secs
  1825. Wed Mar 15 03:14:04 2000 PST | Wed Mar 15 03:14:04 2000 PST | @ 0
  1826. Wed Mar 15 03:14:04 2000 PST | Wed Mar 15 08:14:01 2000 PST | @ 4 hours 59 mins 57 secs ago
  1827. Wed Mar 15 03:14:04 2000 PST | Wed Mar 15 12:14:03 2000 PST | @ 8 hours 59 mins 59 secs ago
  1828. Wed Mar 15 03:14:04 2000 PST | Wed Mar 15 13:14:02 2000 PST | @ 9 hours 59 mins 58 secs ago
  1829. Wed Mar 15 03:14:04 2000 PST | Sun Dec 31 17:32:01 2000 PST | @ 291 days 14 hours 17 mins 57 secs ago
  1830. Wed Mar 15 03:14:04 2000 PST | Mon Jan 01 17:32:01 2001 PST | @ 292 days 14 hours 17 mins 57 secs ago
  1831. Wed Mar 15 03:14:04 2000 PST | Sat Sep 22 18:19:20 2001 PDT | @ 556 days 14 hours 5 mins 16 secs ago
  1832. Wed Mar 15 08:14:01 2000 PST | Thu Jan 01 00:00:00 1970 PST | @ 11031 days 8 hours 14 mins 1 sec
  1833. Wed Mar 15 08:14:01 2000 PST | Wed Feb 28 17:32:01 1996 PST | @ 1476 days 14 hours 42 mins
  1834. Wed Mar 15 08:14:01 2000 PST | Thu Feb 29 17:32:01 1996 PST | @ 1475 days 14 hours 42 mins
  1835. Wed Mar 15 08:14:01 2000 PST | Fri Mar 01 17:32:01 1996 PST | @ 1474 days 14 hours 42 mins
  1836. Wed Mar 15 08:14:01 2000 PST | Mon Dec 30 17:32:01 1996 PST | @ 1170 days 14 hours 42 mins
  1837. Wed Mar 15 08:14:01 2000 PST | Tue Dec 31 17:32:01 1996 PST | @ 1169 days 14 hours 42 mins
  1838. Wed Mar 15 08:14:01 2000 PST | Fri Dec 31 17:32:01 1999 PST | @ 74 days 14 hours 42 mins
  1839. Wed Mar 15 08:14:01 2000 PST | Sat Jan 01 17:32:01 2000 PST | @ 73 days 14 hours 42 mins
  1840. Wed Mar 15 08:14:01 2000 PST | Wed Mar 15 02:14:05 2000 PST | @ 5 hours 59 mins 56 secs
  1841. Wed Mar 15 08:14:01 2000 PST | Wed Mar 15 03:14:04 2000 PST | @ 4 hours 59 mins 57 secs
  1842. Wed Mar 15 08:14:01 2000 PST | Wed Mar 15 08:14:01 2000 PST | @ 0
  1843. Wed Mar 15 08:14:01 2000 PST | Wed Mar 15 12:14:03 2000 PST | @ 4 hours 2 secs ago
  1844. Wed Mar 15 08:14:01 2000 PST | Wed Mar 15 13:14:02 2000 PST | @ 5 hours 1 sec ago
  1845. Wed Mar 15 08:14:01 2000 PST | Sun Dec 31 17:32:01 2000 PST | @ 291 days 9 hours 18 mins ago
  1846. Wed Mar 15 08:14:01 2000 PST | Mon Jan 01 17:32:01 2001 PST | @ 292 days 9 hours 18 mins ago
  1847. Wed Mar 15 08:14:01 2000 PST | Sat Sep 22 18:19:20 2001 PDT | @ 556 days 9 hours 5 mins 19 secs ago
  1848. Wed Mar 15 12:14:03 2000 PST | Thu Jan 01 00:00:00 1970 PST | @ 11031 days 12 hours 14 mins 3 secs
  1849. Wed Mar 15 12:14:03 2000 PST | Wed Feb 28 17:32:01 1996 PST | @ 1476 days 18 hours 42 mins 2 secs
  1850. Wed Mar 15 12:14:03 2000 PST | Thu Feb 29 17:32:01 1996 PST | @ 1475 days 18 hours 42 mins 2 secs
  1851. Wed Mar 15 12:14:03 2000 PST | Fri Mar 01 17:32:01 1996 PST | @ 1474 days 18 hours 42 mins 2 secs
  1852. Wed Mar 15 12:14:03 2000 PST | Mon Dec 30 17:32:01 1996 PST | @ 1170 days 18 hours 42 mins 2 secs
  1853. Wed Mar 15 12:14:03 2000 PST | Tue Dec 31 17:32:01 1996 PST | @ 1169 days 18 hours 42 mins 2 secs
  1854. Wed Mar 15 12:14:03 2000 PST | Fri Dec 31 17:32:01 1999 PST | @ 74 days 18 hours 42 mins 2 secs
  1855. Wed Mar 15 12:14:03 2000 PST | Sat Jan 01 17:32:01 2000 PST | @ 73 days 18 hours 42 mins 2 secs
  1856. Wed Mar 15 12:14:03 2000 PST | Wed Mar 15 02:14:05 2000 PST | @ 9 hours 59 mins 58 secs
  1857. Wed Mar 15 12:14:03 2000 PST | Wed Mar 15 03:14:04 2000 PST | @ 8 hours 59 mins 59 secs
  1858. Wed Mar 15 12:14:03 2000 PST | Wed Mar 15 08:14:01 2000 PST | @ 4 hours 2 secs
  1859. Wed Mar 15 12:14:03 2000 PST | Wed Mar 15 12:14:03 2000 PST | @ 0
  1860. Wed Mar 15 12:14:03 2000 PST | Wed Mar 15 13:14:02 2000 PST | @ 59 mins 59 secs ago
  1861. Wed Mar 15 12:14:03 2000 PST | Sun Dec 31 17:32:01 2000 PST | @ 291 days 5 hours 17 mins 58 secs ago
  1862. Wed Mar 15 12:14:03 2000 PST | Mon Jan 01 17:32:01 2001 PST | @ 292 days 5 hours 17 mins 58 secs ago
  1863. Wed Mar 15 12:14:03 2000 PST | Sat Sep 22 18:19:20 2001 PDT | @ 556 days 5 hours 5 mins 17 secs ago
  1864. Wed Mar 15 13:14:02 2000 PST | Thu Jan 01 00:00:00 1970 PST | @ 11031 days 13 hours 14 mins 2 secs
  1865. Wed Mar 15 13:14:02 2000 PST | Wed Feb 28 17:32:01 1996 PST | @ 1476 days 19 hours 42 mins 1 sec
  1866. Wed Mar 15 13:14:02 2000 PST | Thu Feb 29 17:32:01 1996 PST | @ 1475 days 19 hours 42 mins 1 sec
  1867. Wed Mar 15 13:14:02 2000 PST | Fri Mar 01 17:32:01 1996 PST | @ 1474 days 19 hours 42 mins 1 sec
  1868. Wed Mar 15 13:14:02 2000 PST | Mon Dec 30 17:32:01 1996 PST | @ 1170 days 19 hours 42 mins 1 sec
  1869. Wed Mar 15 13:14:02 2000 PST | Tue Dec 31 17:32:01 1996 PST | @ 1169 days 19 hours 42 mins 1 sec
  1870. Wed Mar 15 13:14:02 2000 PST | Fri Dec 31 17:32:01 1999 PST | @ 74 days 19 hours 42 mins 1 sec
  1871. Wed Mar 15 13:14:02 2000 PST | Sat Jan 01 17:32:01 2000 PST | @ 73 days 19 hours 42 mins 1 sec
  1872. Wed Mar 15 13:14:02 2000 PST | Wed Mar 15 02:14:05 2000 PST | @ 10 hours 59 mins 57 secs
  1873. Wed Mar 15 13:14:02 2000 PST | Wed Mar 15 03:14:04 2000 PST | @ 9 hours 59 mins 58 secs
  1874. Wed Mar 15 13:14:02 2000 PST | Wed Mar 15 08:14:01 2000 PST | @ 5 hours 1 sec
  1875. Wed Mar 15 13:14:02 2000 PST | Wed Mar 15 12:14:03 2000 PST | @ 59 mins 59 secs
  1876. Wed Mar 15 13:14:02 2000 PST | Wed Mar 15 13:14:02 2000 PST | @ 0
  1877. Wed Mar 15 13:14:02 2000 PST | Sun Dec 31 17:32:01 2000 PST | @ 291 days 4 hours 17 mins 59 secs ago
  1878. Wed Mar 15 13:14:02 2000 PST | Mon Jan 01 17:32:01 2001 PST | @ 292 days 4 hours 17 mins 59 secs ago
  1879. Wed Mar 15 13:14:02 2000 PST | Sat Sep 22 18:19:20 2001 PDT | @ 556 days 4 hours 5 mins 18 secs ago
  1880. Sun Dec 31 17:32:01 2000 PST | Thu Jan 01 00:00:00 1970 PST | @ 11322 days 17 hours 32 mins 1 sec
  1881. Sun Dec 31 17:32:01 2000 PST | Wed Feb 28 17:32:01 1996 PST | @ 1768 days
  1882. Sun Dec 31 17:32:01 2000 PST | Thu Feb 29 17:32:01 1996 PST | @ 1767 days
  1883. Sun Dec 31 17:32:01 2000 PST | Fri Mar 01 17:32:01 1996 PST | @ 1766 days
  1884. Sun Dec 31 17:32:01 2000 PST | Mon Dec 30 17:32:01 1996 PST | @ 1462 days
  1885. Sun Dec 31 17:32:01 2000 PST | Tue Dec 31 17:32:01 1996 PST | @ 1461 days
  1886. Sun Dec 31 17:32:01 2000 PST | Fri Dec 31 17:32:01 1999 PST | @ 366 days
  1887. Sun Dec 31 17:32:01 2000 PST | Sat Jan 01 17:32:01 2000 PST | @ 365 days
  1888. Sun Dec 31 17:32:01 2000 PST | Wed Mar 15 02:14:05 2000 PST | @ 291 days 15 hours 17 mins 56 secs
  1889. Sun Dec 31 17:32:01 2000 PST | Wed Mar 15 03:14:04 2000 PST | @ 291 days 14 hours 17 mins 57 secs
  1890. Sun Dec 31 17:32:01 2000 PST | Wed Mar 15 08:14:01 2000 PST | @ 291 days 9 hours 18 mins
  1891. Sun Dec 31 17:32:01 2000 PST | Wed Mar 15 12:14:03 2000 PST | @ 291 days 5 hours 17 mins 58 secs
  1892. Sun Dec 31 17:32:01 2000 PST | Wed Mar 15 13:14:02 2000 PST | @ 291 days 4 hours 17 mins 59 secs
  1893. Sun Dec 31 17:32:01 2000 PST | Sun Dec 31 17:32:01 2000 PST | @ 0
  1894. Sun Dec 31 17:32:01 2000 PST | Mon Jan 01 17:32:01 2001 PST | @ 1 day ago
  1895. Sun Dec 31 17:32:01 2000 PST | Sat Sep 22 18:19:20 2001 PDT | @ 264 days 23 hours 47 mins 19 secs ago
  1896. Mon Jan 01 17:32:01 2001 PST | Thu Jan 01 00:00:00 1970 PST | @ 11323 days 17 hours 32 mins 1 sec
  1897. Mon Jan 01 17:32:01 2001 PST | Wed Feb 28 17:32:01 1996 PST | @ 1769 days
  1898. Mon Jan 01 17:32:01 2001 PST | Thu Feb 29 17:32:01 1996 PST | @ 1768 days
  1899. Mon Jan 01 17:32:01 2001 PST | Fri Mar 01 17:32:01 1996 PST | @ 1767 days
  1900. Mon Jan 01 17:32:01 2001 PST | Mon Dec 30 17:32:01 1996 PST | @ 1463 days
  1901. Mon Jan 01 17:32:01 2001 PST | Tue Dec 31 17:32:01 1996 PST | @ 1462 days
  1902. Mon Jan 01 17:32:01 2001 PST | Fri Dec 31 17:32:01 1999 PST | @ 367 days
  1903. Mon Jan 01 17:32:01 2001 PST | Sat Jan 01 17:32:01 2000 PST | @ 366 days
  1904. Mon Jan 01 17:32:01 2001 PST | Wed Mar 15 02:14:05 2000 PST | @ 292 days 15 hours 17 mins 56 secs
  1905. Mon Jan 01 17:32:01 2001 PST | Wed Mar 15 03:14:04 2000 PST | @ 292 days 14 hours 17 mins 57 secs
  1906. Mon Jan 01 17:32:01 2001 PST | Wed Mar 15 08:14:01 2000 PST | @ 292 days 9 hours 18 mins
  1907. Mon Jan 01 17:32:01 2001 PST | Wed Mar 15 12:14:03 2000 PST | @ 292 days 5 hours 17 mins 58 secs
  1908. Mon Jan 01 17:32:01 2001 PST | Wed Mar 15 13:14:02 2000 PST | @ 292 days 4 hours 17 mins 59 secs
  1909. Mon Jan 01 17:32:01 2001 PST | Sun Dec 31 17:32:01 2000 PST | @ 1 day
  1910. Mon Jan 01 17:32:01 2001 PST | Mon Jan 01 17:32:01 2001 PST | @ 0
  1911. Mon Jan 01 17:32:01 2001 PST | Sat Sep 22 18:19:20 2001 PDT | @ 263 days 23 hours 47 mins 19 secs ago
  1912. Sat Sep 22 18:19:20 2001 PDT | Thu Jan 01 00:00:00 1970 PST | @ 11587 days 17 hours 19 mins 20 secs
  1913. Sat Sep 22 18:19:20 2001 PDT | Wed Feb 28 17:32:01 1996 PST | @ 2032 days 23 hours 47 mins 19 secs
  1914. Sat Sep 22 18:19:20 2001 PDT | Thu Feb 29 17:32:01 1996 PST | @ 2031 days 23 hours 47 mins 19 secs
  1915. Sat Sep 22 18:19:20 2001 PDT | Fri Mar 01 17:32:01 1996 PST | @ 2030 days 23 hours 47 mins 19 secs
  1916. Sat Sep 22 18:19:20 2001 PDT | Mon Dec 30 17:32:01 1996 PST | @ 1726 days 23 hours 47 mins 19 secs
  1917. Sat Sep 22 18:19:20 2001 PDT | Tue Dec 31 17:32:01 1996 PST | @ 1725 days 23 hours 47 mins 19 secs
  1918. Sat Sep 22 18:19:20 2001 PDT | Fri Dec 31 17:32:01 1999 PST | @ 630 days 23 hours 47 mins 19 secs
  1919. Sat Sep 22 18:19:20 2001 PDT | Sat Jan 01 17:32:01 2000 PST | @ 629 days 23 hours 47 mins 19 secs
  1920. Sat Sep 22 18:19:20 2001 PDT | Wed Mar 15 02:14:05 2000 PST | @ 556 days 15 hours 5 mins 15 secs
  1921. Sat Sep 22 18:19:20 2001 PDT | Wed Mar 15 03:14:04 2000 PST | @ 556 days 14 hours 5 mins 16 secs
  1922. Sat Sep 22 18:19:20 2001 PDT | Wed Mar 15 08:14:01 2000 PST | @ 556 days 9 hours 5 mins 19 secs
  1923. Sat Sep 22 18:19:20 2001 PDT | Wed Mar 15 12:14:03 2000 PST | @ 556 days 5 hours 5 mins 17 secs
  1924. Sat Sep 22 18:19:20 2001 PDT | Wed Mar 15 13:14:02 2000 PST | @ 556 days 4 hours 5 mins 18 secs
  1925. Sat Sep 22 18:19:20 2001 PDT | Sun Dec 31 17:32:01 2000 PST | @ 264 days 23 hours 47 mins 19 secs
  1926. Sat Sep 22 18:19:20 2001 PDT | Mon Jan 01 17:32:01 2001 PST | @ 263 days 23 hours 47 mins 19 secs
  1927. Sat Sep 22 18:19:20 2001 PDT | Sat Sep 22 18:19:20 2001 PDT | @ 0
  1928. (256 rows)
  1929. --
  1930. -- Conversions
  1931. --
  1932. SELECT f1 AS "timestamp", date(f1) AS date
  1933. FROM TEMP_TIMESTAMP
  1934. WHERE f1 <> timestamp 'now'
  1935. ORDER BY date, "timestamp";
  1936. timestamp | date
  1937. ------------------------------+------------
  1938. Thu Jan 01 00:00:00 1970 PST | 01-01-1970
  1939. Wed Feb 28 17:32:01 1996 PST | 02-28-1996
  1940. Thu Feb 29 17:32:01 1996 PST | 02-29-1996
  1941. Fri Mar 01 17:32:01 1996 PST | 03-01-1996
  1942. Mon Dec 30 17:32:01 1996 PST | 12-30-1996
  1943. Tue Dec 31 17:32:01 1996 PST | 12-31-1996
  1944. Fri Dec 31 17:32:01 1999 PST | 12-31-1999
  1945. Sat Jan 01 17:32:01 2000 PST | 01-01-2000
  1946. Wed Mar 15 02:14:05 2000 PST | 03-15-2000
  1947. Wed Mar 15 03:14:04 2000 PST | 03-15-2000
  1948. Wed Mar 15 08:14:01 2000 PST | 03-15-2000
  1949. Wed Mar 15 12:14:03 2000 PST | 03-15-2000
  1950. Wed Mar 15 13:14:02 2000 PST | 03-15-2000
  1951. Sun Dec 31 17:32:01 2000 PST | 12-31-2000
  1952. Mon Jan 01 17:32:01 2001 PST | 01-01-2001
  1953. Sat Sep 22 18:19:20 2001 PDT | 09-22-2001
  1954. (16 rows)
  1955. DROP TABLE TEMP_TIMESTAMP;
  1956. --
  1957. -- Comparisons between datetime types, especially overflow cases
  1958. ---
  1959. SELECT '2202020-10-05'::date::timestamp; -- fail
  1960. ERROR: date out of range for timestamp
  1961. SELECT '2202020-10-05'::date > '2020-10-05'::timestamp as t;
  1962. t
  1963. ---
  1964. t
  1965. (1 row)
  1966. SELECT '2020-10-05'::timestamp > '2202020-10-05'::date as f;
  1967. f
  1968. ---
  1969. f
  1970. (1 row)
  1971. SELECT '2202020-10-05'::date::timestamptz; -- fail
  1972. ERROR: date out of range for timestamp
  1973. SELECT '2202020-10-05'::date > '2020-10-05'::timestamptz as t;
  1974. t
  1975. ---
  1976. t
  1977. (1 row)
  1978. SELECT '2020-10-05'::timestamptz > '2202020-10-05'::date as f;
  1979. f
  1980. ---
  1981. f
  1982. (1 row)
  1983. -- This conversion may work depending on timezone
  1984. SELECT '4714-11-24 BC'::date::timestamptz;
  1985. timestamptz
  1986. ---------------------------------
  1987. Mon Nov 24 00:00:00 4714 PST BC
  1988. (1 row)
  1989. SET TimeZone = 'UTC-2';
  1990. SELECT '4714-11-24 BC'::date::timestamptz; -- fail
  1991. ERROR: date out of range for timestamp
  1992. SELECT '4714-11-24 BC'::date < '2020-10-05'::timestamptz as t;
  1993. t
  1994. ---
  1995. t
  1996. (1 row)
  1997. SELECT '2020-10-05'::timestamptz >= '4714-11-24 BC'::date as t;
  1998. t
  1999. ---
  2000. t
  2001. (1 row)
  2002. SELECT '4714-11-24 BC'::timestamp < '2020-10-05'::timestamptz as t;
  2003. t
  2004. ---
  2005. t
  2006. (1 row)
  2007. SELECT '2020-10-05'::timestamptz >= '4714-11-24 BC'::timestamp as t;
  2008. t
  2009. ---
  2010. t
  2011. (1 row)
  2012. RESET TimeZone;
  2013. --
  2014. -- Formats
  2015. --
  2016. SET DateStyle TO 'US,Postgres';
  2017. SHOW DateStyle;
  2018. DateStyle
  2019. ---------------
  2020. Postgres, MDY
  2021. (1 row)
  2022. SELECT d1 AS us_postgres FROM TIMESTAMP_TBL;
  2023. us_postgres
  2024. -----------------------------
  2025. -infinity
  2026. infinity
  2027. Thu Jan 01 00:00:00 1970
  2028. Mon Feb 10 17:32:01 1997
  2029. Mon Feb 10 17:32:01 1997
  2030. Mon Feb 10 17:32:02 1997
  2031. Mon Feb 10 17:32:01.4 1997
  2032. Mon Feb 10 17:32:01.5 1997
  2033. Mon Feb 10 17:32:01.6 1997
  2034. Thu Jan 02 00:00:00 1997
  2035. Thu Jan 02 03:04:05 1997
  2036. Mon Feb 10 17:32:01 1997
  2037. Mon Feb 10 17:32:01 1997
  2038. Mon Feb 10 17:32:01 1997
  2039. Mon Feb 10 17:32:01 1997
  2040. Tue Jun 10 17:32:01 1997
  2041. Sat Sep 22 18:19:20 2001
  2042. Wed Mar 15 08:14:01 2000
  2043. Wed Mar 15 13:14:02 2000
  2044. Wed Mar 15 12:14:03 2000
  2045. Wed Mar 15 03:14:04 2000
  2046. Wed Mar 15 02:14:05 2000
  2047. Mon Feb 10 17:32:01 1997
  2048. Mon Feb 10 17:32:01 1997
  2049. Mon Feb 10 17:32:00 1997
  2050. Mon Feb 10 17:32:01 1997
  2051. Mon Feb 10 17:32:01 1997
  2052. Mon Feb 10 17:32:01 1997
  2053. Mon Feb 10 17:32:01 1997
  2054. Mon Feb 10 17:32:01 1997
  2055. Mon Feb 10 17:32:01 1997
  2056. Mon Feb 10 17:32:01 1997
  2057. Mon Feb 10 17:32:01 1997
  2058. Mon Feb 10 17:32:01 1997
  2059. Tue Jun 10 18:32:01 1997
  2060. Mon Feb 10 17:32:01 1997
  2061. Tue Feb 11 17:32:01 1997
  2062. Wed Feb 12 17:32:01 1997
  2063. Thu Feb 13 17:32:01 1997
  2064. Fri Feb 14 17:32:01 1997
  2065. Sat Feb 15 17:32:01 1997
  2066. Sun Feb 16 17:32:01 1997
  2067. Tue Feb 16 17:32:01 0097 BC
  2068. Sat Feb 16 17:32:01 0097
  2069. Thu Feb 16 17:32:01 0597
  2070. Tue Feb 16 17:32:01 1097
  2071. Sat Feb 16 17:32:01 1697
  2072. Thu Feb 16 17:32:01 1797
  2073. Tue Feb 16 17:32:01 1897
  2074. Sun Feb 16 17:32:01 1997
  2075. Sat Feb 16 17:32:01 2097
  2076. Wed Feb 28 17:32:01 1996
  2077. Thu Feb 29 17:32:01 1996
  2078. Fri Mar 01 17:32:01 1996
  2079. Mon Dec 30 17:32:01 1996
  2080. Tue Dec 31 17:32:01 1996
  2081. Wed Jan 01 17:32:01 1997
  2082. Fri Feb 28 17:32:01 1997
  2083. Sat Mar 01 17:32:01 1997
  2084. Tue Dec 30 17:32:01 1997
  2085. Wed Dec 31 17:32:01 1997
  2086. Fri Dec 31 17:32:01 1999
  2087. Sat Jan 01 17:32:01 2000
  2088. Sun Dec 31 17:32:01 2000
  2089. Mon Jan 01 17:32:01 2001
  2090. (65 rows)
  2091. SET DateStyle TO 'US,ISO';
  2092. SELECT d1 AS us_iso FROM TIMESTAMP_TBL;
  2093. us_iso
  2094. ------------------------
  2095. -infinity
  2096. infinity
  2097. 1970-01-01 00:00:00
  2098. 1997-02-10 17:32:01
  2099. 1997-02-10 17:32:01
  2100. 1997-02-10 17:32:02
  2101. 1997-02-10 17:32:01.4
  2102. 1997-02-10 17:32:01.5
  2103. 1997-02-10 17:32:01.6
  2104. 1997-01-02 00:00:00
  2105. 1997-01-02 03:04:05
  2106. 1997-02-10 17:32:01
  2107. 1997-02-10 17:32:01
  2108. 1997-02-10 17:32:01
  2109. 1997-02-10 17:32:01
  2110. 1997-06-10 17:32:01
  2111. 2001-09-22 18:19:20
  2112. 2000-03-15 08:14:01
  2113. 2000-03-15 13:14:02
  2114. 2000-03-15 12:14:03
  2115. 2000-03-15 03:14:04
  2116. 2000-03-15 02:14:05
  2117. 1997-02-10 17:32:01
  2118. 1997-02-10 17:32:01
  2119. 1997-02-10 17:32:00
  2120. 1997-02-10 17:32:01
  2121. 1997-02-10 17:32:01
  2122. 1997-02-10 17:32:01
  2123. 1997-02-10 17:32:01
  2124. 1997-02-10 17:32:01
  2125. 1997-02-10 17:32:01
  2126. 1997-02-10 17:32:01
  2127. 1997-02-10 17:32:01
  2128. 1997-02-10 17:32:01
  2129. 1997-06-10 18:32:01
  2130. 1997-02-10 17:32:01
  2131. 1997-02-11 17:32:01
  2132. 1997-02-12 17:32:01
  2133. 1997-02-13 17:32:01
  2134. 1997-02-14 17:32:01
  2135. 1997-02-15 17:32:01
  2136. 1997-02-16 17:32:01
  2137. 0097-02-16 17:32:01 BC
  2138. 0097-02-16 17:32:01
  2139. 0597-02-16 17:32:01
  2140. 1097-02-16 17:32:01
  2141. 1697-02-16 17:32:01
  2142. 1797-02-16 17:32:01
  2143. 1897-02-16 17:32:01
  2144. 1997-02-16 17:32:01
  2145. 2097-02-16 17:32:01
  2146. 1996-02-28 17:32:01
  2147. 1996-02-29 17:32:01
  2148. 1996-03-01 17:32:01
  2149. 1996-12-30 17:32:01
  2150. 1996-12-31 17:32:01
  2151. 1997-01-01 17:32:01
  2152. 1997-02-28 17:32:01
  2153. 1997-03-01 17:32:01
  2154. 1997-12-30 17:32:01
  2155. 1997-12-31 17:32:01
  2156. 1999-12-31 17:32:01
  2157. 2000-01-01 17:32:01
  2158. 2000-12-31 17:32:01
  2159. 2001-01-01 17:32:01
  2160. (65 rows)
  2161. SET DateStyle TO 'US,SQL';
  2162. SHOW DateStyle;
  2163. DateStyle
  2164. -----------
  2165. SQL, MDY
  2166. (1 row)
  2167. SELECT d1 AS us_sql FROM TIMESTAMP_TBL;
  2168. us_sql
  2169. ------------------------
  2170. -infinity
  2171. infinity
  2172. 01/01/1970 00:00:00
  2173. 02/10/1997 17:32:01
  2174. 02/10/1997 17:32:01
  2175. 02/10/1997 17:32:02
  2176. 02/10/1997 17:32:01.4
  2177. 02/10/1997 17:32:01.5
  2178. 02/10/1997 17:32:01.6
  2179. 01/02/1997 00:00:00
  2180. 01/02/1997 03:04:05
  2181. 02/10/1997 17:32:01
  2182. 02/10/1997 17:32:01
  2183. 02/10/1997 17:32:01
  2184. 02/10/1997 17:32:01
  2185. 06/10/1997 17:32:01
  2186. 09/22/2001 18:19:20
  2187. 03/15/2000 08:14:01
  2188. 03/15/2000 13:14:02
  2189. 03/15/2000 12:14:03
  2190. 03/15/2000 03:14:04
  2191. 03/15/2000 02:14:05
  2192. 02/10/1997 17:32:01
  2193. 02/10/1997 17:32:01
  2194. 02/10/1997 17:32:00
  2195. 02/10/1997 17:32:01
  2196. 02/10/1997 17:32:01
  2197. 02/10/1997 17:32:01
  2198. 02/10/1997 17:32:01
  2199. 02/10/1997 17:32:01
  2200. 02/10/1997 17:32:01
  2201. 02/10/1997 17:32:01
  2202. 02/10/1997 17:32:01
  2203. 02/10/1997 17:32:01
  2204. 06/10/1997 18:32:01
  2205. 02/10/1997 17:32:01
  2206. 02/11/1997 17:32:01
  2207. 02/12/1997 17:32:01
  2208. 02/13/1997 17:32:01
  2209. 02/14/1997 17:32:01
  2210. 02/15/1997 17:32:01
  2211. 02/16/1997 17:32:01
  2212. 02/16/0097 17:32:01 BC
  2213. 02/16/0097 17:32:01
  2214. 02/16/0597 17:32:01
  2215. 02/16/1097 17:32:01
  2216. 02/16/1697 17:32:01
  2217. 02/16/1797 17:32:01
  2218. 02/16/1897 17:32:01
  2219. 02/16/1997 17:32:01
  2220. 02/16/2097 17:32:01
  2221. 02/28/1996 17:32:01
  2222. 02/29/1996 17:32:01
  2223. 03/01/1996 17:32:01
  2224. 12/30/1996 17:32:01
  2225. 12/31/1996 17:32:01
  2226. 01/01/1997 17:32:01
  2227. 02/28/1997 17:32:01
  2228. 03/01/1997 17:32:01
  2229. 12/30/1997 17:32:01
  2230. 12/31/1997 17:32:01
  2231. 12/31/1999 17:32:01
  2232. 01/01/2000 17:32:01
  2233. 12/31/2000 17:32:01
  2234. 01/01/2001 17:32:01
  2235. (65 rows)
  2236. SET DateStyle TO 'European,Postgres';
  2237. SHOW DateStyle;
  2238. DateStyle
  2239. ---------------
  2240. Postgres, DMY
  2241. (1 row)
  2242. INSERT INTO TIMESTAMP_TBL VALUES('13/06/1957');
  2243. SELECT count(*) as one FROM TIMESTAMP_TBL WHERE d1 = 'Jun 13 1957';
  2244. one
  2245. -----
  2246. 1
  2247. (1 row)
  2248. SELECT d1 AS european_postgres FROM TIMESTAMP_TBL;
  2249. european_postgres
  2250. -----------------------------
  2251. -infinity
  2252. infinity
  2253. Thu 01 Jan 00:00:00 1970
  2254. Mon 10 Feb 17:32:01 1997
  2255. Mon 10 Feb 17:32:01 1997
  2256. Mon 10 Feb 17:32:02 1997
  2257. Mon 10 Feb 17:32:01.4 1997
  2258. Mon 10 Feb 17:32:01.5 1997
  2259. Mon 10 Feb 17:32:01.6 1997
  2260. Thu 02 Jan 00:00:00 1997
  2261. Thu 02 Jan 03:04:05 1997
  2262. Mon 10 Feb 17:32:01 1997
  2263. Mon 10 Feb 17:32:01 1997
  2264. Mon 10 Feb 17:32:01 1997
  2265. Mon 10 Feb 17:32:01 1997
  2266. Tue 10 Jun 17:32:01 1997
  2267. Sat 22 Sep 18:19:20 2001
  2268. Wed 15 Mar 08:14:01 2000
  2269. Wed 15 Mar 13:14:02 2000
  2270. Wed 15 Mar 12:14:03 2000
  2271. Wed 15 Mar 03:14:04 2000
  2272. Wed 15 Mar 02:14:05 2000
  2273. Mon 10 Feb 17:32:01 1997
  2274. Mon 10 Feb 17:32:01 1997
  2275. Mon 10 Feb 17:32:00 1997
  2276. Mon 10 Feb 17:32:01 1997
  2277. Mon 10 Feb 17:32:01 1997
  2278. Mon 10 Feb 17:32:01 1997
  2279. Mon 10 Feb 17:32:01 1997
  2280. Mon 10 Feb 17:32:01 1997
  2281. Mon 10 Feb 17:32:01 1997
  2282. Mon 10 Feb 17:32:01 1997
  2283. Mon 10 Feb 17:32:01 1997
  2284. Mon 10 Feb 17:32:01 1997
  2285. Tue 10 Jun 18:32:01 1997
  2286. Mon 10 Feb 17:32:01 1997
  2287. Tue 11 Feb 17:32:01 1997
  2288. Wed 12 Feb 17:32:01 1997
  2289. Thu 13 Feb 17:32:01 1997
  2290. Fri 14 Feb 17:32:01 1997
  2291. Sat 15 Feb 17:32:01 1997
  2292. Sun 16 Feb 17:32:01 1997
  2293. Tue 16 Feb 17:32:01 0097 BC
  2294. Sat 16 Feb 17:32:01 0097
  2295. Thu 16 Feb 17:32:01 0597
  2296. Tue 16 Feb 17:32:01 1097
  2297. Sat 16 Feb 17:32:01 1697
  2298. Thu 16 Feb 17:32:01 1797
  2299. Tue 16 Feb 17:32:01 1897
  2300. Sun 16 Feb 17:32:01 1997
  2301. Sat 16 Feb 17:32:01 2097
  2302. Wed 28 Feb 17:32:01 1996
  2303. Thu 29 Feb 17:32:01 1996
  2304. Fri 01 Mar 17:32:01 1996
  2305. Mon 30 Dec 17:32:01 1996
  2306. Tue 31 Dec 17:32:01 1996
  2307. Wed 01 Jan 17:32:01 1997
  2308. Fri 28 Feb 17:32:01 1997
  2309. Sat 01 Mar 17:32:01 1997
  2310. Tue 30 Dec 17:32:01 1997
  2311. Wed 31 Dec 17:32:01 1997
  2312. Fri 31 Dec 17:32:01 1999
  2313. Sat 01 Jan 17:32:01 2000
  2314. Sun 31 Dec 17:32:01 2000
  2315. Mon 01 Jan 17:32:01 2001
  2316. Thu 13 Jun 00:00:00 1957
  2317. (66 rows)
  2318. SET DateStyle TO 'European,ISO';
  2319. SHOW DateStyle;
  2320. DateStyle
  2321. -----------
  2322. ISO, DMY
  2323. (1 row)
  2324. SELECT d1 AS european_iso FROM TIMESTAMP_TBL;
  2325. european_iso
  2326. ------------------------
  2327. -infinity
  2328. infinity
  2329. 1970-01-01 00:00:00
  2330. 1997-02-10 17:32:01
  2331. 1997-02-10 17:32:01
  2332. 1997-02-10 17:32:02
  2333. 1997-02-10 17:32:01.4
  2334. 1997-02-10 17:32:01.5
  2335. 1997-02-10 17:32:01.6
  2336. 1997-01-02 00:00:00
  2337. 1997-01-02 03:04:05
  2338. 1997-02-10 17:32:01
  2339. 1997-02-10 17:32:01
  2340. 1997-02-10 17:32:01
  2341. 1997-02-10 17:32:01
  2342. 1997-06-10 17:32:01
  2343. 2001-09-22 18:19:20
  2344. 2000-03-15 08:14:01
  2345. 2000-03-15 13:14:02
  2346. 2000-03-15 12:14:03
  2347. 2000-03-15 03:14:04
  2348. 2000-03-15 02:14:05
  2349. 1997-02-10 17:32:01
  2350. 1997-02-10 17:32:01
  2351. 1997-02-10 17:32:00
  2352. 1997-02-10 17:32:01
  2353. 1997-02-10 17:32:01
  2354. 1997-02-10 17:32:01
  2355. 1997-02-10 17:32:01
  2356. 1997-02-10 17:32:01
  2357. 1997-02-10 17:32:01
  2358. 1997-02-10 17:32:01
  2359. 1997-02-10 17:32:01
  2360. 1997-02-10 17:32:01
  2361. 1997-06-10 18:32:01
  2362. 1997-02-10 17:32:01
  2363. 1997-02-11 17:32:01
  2364. 1997-02-12 17:32:01
  2365. 1997-02-13 17:32:01
  2366. 1997-02-14 17:32:01
  2367. 1997-02-15 17:32:01
  2368. 1997-02-16 17:32:01
  2369. 0097-02-16 17:32:01 BC
  2370. 0097-02-16 17:32:01
  2371. 0597-02-16 17:32:01
  2372. 1097-02-16 17:32:01
  2373. 1697-02-16 17:32:01
  2374. 1797-02-16 17:32:01
  2375. 1897-02-16 17:32:01
  2376. 1997-02-16 17:32:01
  2377. 2097-02-16 17:32:01
  2378. 1996-02-28 17:32:01
  2379. 1996-02-29 17:32:01
  2380. 1996-03-01 17:32:01
  2381. 1996-12-30 17:32:01
  2382. 1996-12-31 17:32:01
  2383. 1997-01-01 17:32:01
  2384. 1997-02-28 17:32:01
  2385. 1997-03-01 17:32:01
  2386. 1997-12-30 17:32:01
  2387. 1997-12-31 17:32:01
  2388. 1999-12-31 17:32:01
  2389. 2000-01-01 17:32:01
  2390. 2000-12-31 17:32:01
  2391. 2001-01-01 17:32:01
  2392. 1957-06-13 00:00:00
  2393. (66 rows)
  2394. SET DateStyle TO 'European,SQL';
  2395. SHOW DateStyle;
  2396. DateStyle
  2397. -----------
  2398. SQL, DMY
  2399. (1 row)
  2400. SELECT d1 AS european_sql FROM TIMESTAMP_TBL;
  2401. european_sql
  2402. ------------------------
  2403. -infinity
  2404. infinity
  2405. 01/01/1970 00:00:00
  2406. 10/02/1997 17:32:01
  2407. 10/02/1997 17:32:01
  2408. 10/02/1997 17:32:02
  2409. 10/02/1997 17:32:01.4
  2410. 10/02/1997 17:32:01.5
  2411. 10/02/1997 17:32:01.6
  2412. 02/01/1997 00:00:00
  2413. 02/01/1997 03:04:05
  2414. 10/02/1997 17:32:01
  2415. 10/02/1997 17:32:01
  2416. 10/02/1997 17:32:01
  2417. 10/02/1997 17:32:01
  2418. 10/06/1997 17:32:01
  2419. 22/09/2001 18:19:20
  2420. 15/03/2000 08:14:01
  2421. 15/03/2000 13:14:02
  2422. 15/03/2000 12:14:03
  2423. 15/03/2000 03:14:04
  2424. 15/03/2000 02:14:05
  2425. 10/02/1997 17:32:01
  2426. 10/02/1997 17:32:01
  2427. 10/02/1997 17:32:00
  2428. 10/02/1997 17:32:01
  2429. 10/02/1997 17:32:01
  2430. 10/02/1997 17:32:01
  2431. 10/02/1997 17:32:01
  2432. 10/02/1997 17:32:01
  2433. 10/02/1997 17:32:01
  2434. 10/02/1997 17:32:01
  2435. 10/02/1997 17:32:01
  2436. 10/02/1997 17:32:01
  2437. 10/06/1997 18:32:01
  2438. 10/02/1997 17:32:01
  2439. 11/02/1997 17:32:01
  2440. 12/02/1997 17:32:01
  2441. 13/02/1997 17:32:01
  2442. 14/02/1997 17:32:01
  2443. 15/02/1997 17:32:01
  2444. 16/02/1997 17:32:01
  2445. 16/02/0097 17:32:01 BC
  2446. 16/02/0097 17:32:01
  2447. 16/02/0597 17:32:01
  2448. 16/02/1097 17:32:01
  2449. 16/02/1697 17:32:01
  2450. 16/02/1797 17:32:01
  2451. 16/02/1897 17:32:01
  2452. 16/02/1997 17:32:01
  2453. 16/02/2097 17:32:01
  2454. 28/02/1996 17:32:01
  2455. 29/02/1996 17:32:01
  2456. 01/03/1996 17:32:01
  2457. 30/12/1996 17:32:01
  2458. 31/12/1996 17:32:01
  2459. 01/01/1997 17:32:01
  2460. 28/02/1997 17:32:01
  2461. 01/03/1997 17:32:01
  2462. 30/12/1997 17:32:01
  2463. 31/12/1997 17:32:01
  2464. 31/12/1999 17:32:01
  2465. 01/01/2000 17:32:01
  2466. 31/12/2000 17:32:01
  2467. 01/01/2001 17:32:01
  2468. 13/06/1957 00:00:00
  2469. (66 rows)
  2470. RESET DateStyle;
  2471. --
  2472. -- to_timestamp()
  2473. --
  2474. SELECT to_timestamp('0097/Feb/16 --> 08:14:30', 'YYYY/Mon/DD --> HH:MI:SS');
  2475. to_timestamp
  2476. ------------------------------
  2477. Sat Feb 16 08:14:30 0097 PST
  2478. (1 row)
  2479. SELECT to_timestamp('97/2/16 8:14:30', 'FMYYYY/FMMM/FMDD FMHH:FMMI:FMSS');
  2480. to_timestamp
  2481. ------------------------------
  2482. Sat Feb 16 08:14:30 0097 PST
  2483. (1 row)
  2484. SELECT to_timestamp('2011$03!18 23_38_15', 'YYYY-MM-DD HH24:MI:SS');
  2485. to_timestamp
  2486. ------------------------------
  2487. Fri Mar 18 23:38:15 2011 PDT
  2488. (1 row)
  2489. SELECT to_timestamp('1985 January 12', 'YYYY FMMonth DD');
  2490. to_timestamp
  2491. ------------------------------
  2492. Sat Jan 12 00:00:00 1985 PST
  2493. (1 row)
  2494. SELECT to_timestamp('1985 FMMonth 12', 'YYYY "FMMonth" DD');
  2495. to_timestamp
  2496. ------------------------------
  2497. Sat Jan 12 00:00:00 1985 PST
  2498. (1 row)
  2499. SELECT to_timestamp('1985 \ 12', 'YYYY \\ DD');
  2500. to_timestamp
  2501. ------------------------------
  2502. Sat Jan 12 00:00:00 1985 PST
  2503. (1 row)
  2504. SELECT to_timestamp('My birthday-> Year: 1976, Month: May, Day: 16',
  2505. '"My birthday-> Year:" YYYY, "Month:" FMMonth, "Day:" DD');
  2506. to_timestamp
  2507. ------------------------------
  2508. Sun May 16 00:00:00 1976 PDT
  2509. (1 row)
  2510. SELECT to_timestamp('1,582nd VIII 21', 'Y,YYYth FMRM DD');
  2511. to_timestamp
  2512. ------------------------------
  2513. Sat Aug 21 00:00:00 1582 PST
  2514. (1 row)
  2515. SELECT to_timestamp('15 "text between quote marks" 98 54 45',
  2516. E'HH24 "\\"text between quote marks\\"" YY MI SS');
  2517. to_timestamp
  2518. ------------------------------
  2519. Thu Jan 01 15:54:45 1998 PST
  2520. (1 row)
  2521. SELECT to_timestamp('05121445482000', 'MMDDHH24MISSYYYY');
  2522. to_timestamp
  2523. ------------------------------
  2524. Fri May 12 14:45:48 2000 PDT
  2525. (1 row)
  2526. SELECT to_timestamp('2000January09Sunday', 'YYYYFMMonthDDFMDay');
  2527. to_timestamp
  2528. ------------------------------
  2529. Sun Jan 09 00:00:00 2000 PST
  2530. (1 row)
  2531. SELECT to_timestamp('97/Feb/16', 'YYMonDD');
  2532. ERROR: invalid value "/Feb/16" for "Mon"
  2533. DETAIL: The given value did not match any of the allowed values for this field.
  2534. SELECT to_timestamp('97/Feb/16', 'YY:Mon:DD');
  2535. to_timestamp
  2536. ------------------------------
  2537. Sun Feb 16 00:00:00 1997 PST
  2538. (1 row)
  2539. SELECT to_timestamp('97/Feb/16', 'FXYY:Mon:DD');
  2540. to_timestamp
  2541. ------------------------------
  2542. Sun Feb 16 00:00:00 1997 PST
  2543. (1 row)
  2544. SELECT to_timestamp('97/Feb/16', 'FXYY/Mon/DD');
  2545. to_timestamp
  2546. ------------------------------
  2547. Sun Feb 16 00:00:00 1997 PST
  2548. (1 row)
  2549. SELECT to_timestamp('19971116', 'YYYYMMDD');
  2550. to_timestamp
  2551. ------------------------------
  2552. Sun Nov 16 00:00:00 1997 PST
  2553. (1 row)
  2554. SELECT to_timestamp('20000-1116', 'YYYY-MMDD');
  2555. to_timestamp
  2556. -------------------------------
  2557. Thu Nov 16 00:00:00 20000 PST
  2558. (1 row)
  2559. SELECT to_timestamp('1997 AD 11 16', 'YYYY BC MM DD');
  2560. to_timestamp
  2561. ------------------------------
  2562. Sun Nov 16 00:00:00 1997 PST
  2563. (1 row)
  2564. SELECT to_timestamp('1997 BC 11 16', 'YYYY BC MM DD');
  2565. to_timestamp
  2566. ---------------------------------
  2567. Tue Nov 16 00:00:00 1997 PST BC
  2568. (1 row)
  2569. SELECT to_timestamp('1997 A.D. 11 16', 'YYYY B.C. MM DD');
  2570. to_timestamp
  2571. ------------------------------
  2572. Sun Nov 16 00:00:00 1997 PST
  2573. (1 row)
  2574. SELECT to_timestamp('1997 B.C. 11 16', 'YYYY B.C. MM DD');
  2575. to_timestamp
  2576. ---------------------------------
  2577. Tue Nov 16 00:00:00 1997 PST BC
  2578. (1 row)
  2579. SELECT to_timestamp('9-1116', 'Y-MMDD');
  2580. to_timestamp
  2581. ------------------------------
  2582. Mon Nov 16 00:00:00 2009 PST
  2583. (1 row)
  2584. SELECT to_timestamp('95-1116', 'YY-MMDD');
  2585. to_timestamp
  2586. ------------------------------
  2587. Thu Nov 16 00:00:00 1995 PST
  2588. (1 row)
  2589. SELECT to_timestamp('995-1116', 'YYY-MMDD');
  2590. to_timestamp
  2591. ------------------------------
  2592. Thu Nov 16 00:00:00 1995 PST
  2593. (1 row)
  2594. SELECT to_timestamp('2005426', 'YYYYWWD');
  2595. to_timestamp
  2596. ------------------------------
  2597. Sat Oct 15 00:00:00 2005 PDT
  2598. (1 row)
  2599. SELECT to_timestamp('2005300', 'YYYYDDD');
  2600. to_timestamp
  2601. ------------------------------
  2602. Thu Oct 27 00:00:00 2005 PDT
  2603. (1 row)
  2604. SELECT to_timestamp('2005527', 'IYYYIWID');
  2605. to_timestamp
  2606. ------------------------------
  2607. Sun Jan 01 00:00:00 2006 PST
  2608. (1 row)
  2609. SELECT to_timestamp('005527', 'IYYIWID');
  2610. to_timestamp
  2611. ------------------------------
  2612. Sun Jan 01 00:00:00 2006 PST
  2613. (1 row)
  2614. SELECT to_timestamp('05527', 'IYIWID');
  2615. to_timestamp
  2616. ------------------------------
  2617. Sun Jan 01 00:00:00 2006 PST
  2618. (1 row)
  2619. SELECT to_timestamp('5527', 'IIWID');
  2620. to_timestamp
  2621. ------------------------------
  2622. Sun Jan 01 00:00:00 2006 PST
  2623. (1 row)
  2624. SELECT to_timestamp('2005364', 'IYYYIDDD');
  2625. to_timestamp
  2626. ------------------------------
  2627. Sun Jan 01 00:00:00 2006 PST
  2628. (1 row)
  2629. SELECT to_timestamp('20050302', 'YYYYMMDD');
  2630. to_timestamp
  2631. ------------------------------
  2632. Wed Mar 02 00:00:00 2005 PST
  2633. (1 row)
  2634. SELECT to_timestamp('2005 03 02', 'YYYYMMDD');
  2635. to_timestamp
  2636. ------------------------------
  2637. Wed Mar 02 00:00:00 2005 PST
  2638. (1 row)
  2639. SELECT to_timestamp(' 2005 03 02', 'YYYYMMDD');
  2640. to_timestamp
  2641. ------------------------------
  2642. Wed Mar 02 00:00:00 2005 PST
  2643. (1 row)
  2644. SELECT to_timestamp(' 20050302', 'YYYYMMDD');
  2645. to_timestamp
  2646. ------------------------------
  2647. Wed Mar 02 00:00:00 2005 PST
  2648. (1 row)
  2649. SELECT to_timestamp('2011-12-18 11:38 AM', 'YYYY-MM-DD HH12:MI PM');
  2650. to_timestamp
  2651. ------------------------------
  2652. Sun Dec 18 11:38:00 2011 PST
  2653. (1 row)
  2654. SELECT to_timestamp('2011-12-18 11:38 PM', 'YYYY-MM-DD HH12:MI PM');
  2655. to_timestamp
  2656. ------------------------------
  2657. Sun Dec 18 23:38:00 2011 PST
  2658. (1 row)
  2659. SELECT to_timestamp('2011-12-18 11:38 A.M.', 'YYYY-MM-DD HH12:MI P.M.');
  2660. to_timestamp
  2661. ------------------------------
  2662. Sun Dec 18 11:38:00 2011 PST
  2663. (1 row)
  2664. SELECT to_timestamp('2011-12-18 11:38 P.M.', 'YYYY-MM-DD HH12:MI P.M.');
  2665. to_timestamp
  2666. ------------------------------
  2667. Sun Dec 18 23:38:00 2011 PST
  2668. (1 row)
  2669. SELECT to_timestamp('2011-12-18 11:38 +05', 'YYYY-MM-DD HH12:MI TZH');
  2670. to_timestamp
  2671. ------------------------------
  2672. Sat Dec 17 22:38:00 2011 PST
  2673. (1 row)
  2674. SELECT to_timestamp('2011-12-18 11:38 -05', 'YYYY-MM-DD HH12:MI TZH');
  2675. to_timestamp
  2676. ------------------------------
  2677. Sun Dec 18 08:38:00 2011 PST
  2678. (1 row)
  2679. SELECT to_timestamp('2011-12-18 11:38 +05:20', 'YYYY-MM-DD HH12:MI TZH:TZM');
  2680. to_timestamp
  2681. ------------------------------
  2682. Sat Dec 17 22:18:00 2011 PST
  2683. (1 row)
  2684. SELECT to_timestamp('2011-12-18 11:38 -05:20', 'YYYY-MM-DD HH12:MI TZH:TZM');
  2685. to_timestamp
  2686. ------------------------------
  2687. Sun Dec 18 08:58:00 2011 PST
  2688. (1 row)
  2689. SELECT to_timestamp('2011-12-18 11:38 20', 'YYYY-MM-DD HH12:MI TZM');
  2690. to_timestamp
  2691. ------------------------------
  2692. Sun Dec 18 03:18:00 2011 PST
  2693. (1 row)
  2694. SELECT to_timestamp('2011-12-18 11:38 PST', 'YYYY-MM-DD HH12:MI TZ'); -- NYI
  2695. ERROR: formatting field "TZ" is only supported in to_char
  2696. SELECT to_timestamp('2018-11-02 12:34:56.025', 'YYYY-MM-DD HH24:MI:SS.MS');
  2697. to_timestamp
  2698. ----------------------------------
  2699. Fri Nov 02 12:34:56.025 2018 PDT
  2700. (1 row)
  2701. SELECT i, to_timestamp('2018-11-02 12:34:56', 'YYYY-MM-DD HH24:MI:SS.FF' || i) FROM generate_series(1, 6) i;
  2702. i | to_timestamp
  2703. ---+------------------------------
  2704. 1 | Fri Nov 02 12:34:56 2018 PDT
  2705. 2 | Fri Nov 02 12:34:56 2018 PDT
  2706. 3 | Fri Nov 02 12:34:56 2018 PDT
  2707. 4 | Fri Nov 02 12:34:56 2018 PDT
  2708. 5 | Fri Nov 02 12:34:56 2018 PDT
  2709. 6 | Fri Nov 02 12:34:56 2018 PDT
  2710. (6 rows)
  2711. SELECT i, to_timestamp('2018-11-02 12:34:56.1', 'YYYY-MM-DD HH24:MI:SS.FF' || i) FROM generate_series(1, 6) i;
  2712. i | to_timestamp
  2713. ---+--------------------------------
  2714. 1 | Fri Nov 02 12:34:56.1 2018 PDT
  2715. 2 | Fri Nov 02 12:34:56.1 2018 PDT
  2716. 3 | Fri Nov 02 12:34:56.1 2018 PDT
  2717. 4 | Fri Nov 02 12:34:56.1 2018 PDT
  2718. 5 | Fri Nov 02 12:34:56.1 2018 PDT
  2719. 6 | Fri Nov 02 12:34:56.1 2018 PDT
  2720. (6 rows)
  2721. SELECT i, to_timestamp('2018-11-02 12:34:56.12', 'YYYY-MM-DD HH24:MI:SS.FF' || i) FROM generate_series(1, 6) i;
  2722. i | to_timestamp
  2723. ---+---------------------------------
  2724. 1 | Fri Nov 02 12:34:56.1 2018 PDT
  2725. 2 | Fri Nov 02 12:34:56.12 2018 PDT
  2726. 3 | Fri Nov 02 12:34:56.12 2018 PDT
  2727. 4 | Fri Nov 02 12:34:56.12 2018 PDT
  2728. 5 | Fri Nov 02 12:34:56.12 2018 PDT
  2729. 6 | Fri Nov 02 12:34:56.12 2018 PDT
  2730. (6 rows)
  2731. SELECT i, to_timestamp('2018-11-02 12:34:56.123', 'YYYY-MM-DD HH24:MI:SS.FF' || i) FROM generate_series(1, 6) i;
  2732. i | to_timestamp
  2733. ---+----------------------------------
  2734. 1 | Fri Nov 02 12:34:56.1 2018 PDT
  2735. 2 | Fri Nov 02 12:34:56.12 2018 PDT
  2736. 3 | Fri Nov 02 12:34:56.123 2018 PDT
  2737. 4 | Fri Nov 02 12:34:56.123 2018 PDT
  2738. 5 | Fri Nov 02 12:34:56.123 2018 PDT
  2739. 6 | Fri Nov 02 12:34:56.123 2018 PDT
  2740. (6 rows)
  2741. SELECT i, to_timestamp('2018-11-02 12:34:56.1234', 'YYYY-MM-DD HH24:MI:SS.FF' || i) FROM generate_series(1, 6) i;
  2742. i | to_timestamp
  2743. ---+-----------------------------------
  2744. 1 | Fri Nov 02 12:34:56.1 2018 PDT
  2745. 2 | Fri Nov 02 12:34:56.12 2018 PDT
  2746. 3 | Fri Nov 02 12:34:56.123 2018 PDT
  2747. 4 | Fri Nov 02 12:34:56.1234 2018 PDT
  2748. 5 | Fri Nov 02 12:34:56.1234 2018 PDT
  2749. 6 | Fri Nov 02 12:34:56.1234 2018 PDT
  2750. (6 rows)
  2751. SELECT i, to_timestamp('2018-11-02 12:34:56.12345', 'YYYY-MM-DD HH24:MI:SS.FF' || i) FROM generate_series(1, 6) i;
  2752. i | to_timestamp
  2753. ---+------------------------------------
  2754. 1 | Fri Nov 02 12:34:56.1 2018 PDT
  2755. 2 | Fri Nov 02 12:34:56.12 2018 PDT
  2756. 3 | Fri Nov 02 12:34:56.123 2018 PDT
  2757. 4 | Fri Nov 02 12:34:56.1235 2018 PDT
  2758. 5 | Fri Nov 02 12:34:56.12345 2018 PDT
  2759. 6 | Fri Nov 02 12:34:56.12345 2018 PDT
  2760. (6 rows)
  2761. SELECT i, to_timestamp('2018-11-02 12:34:56.123456', 'YYYY-MM-DD HH24:MI:SS.FF' || i) FROM generate_series(1, 6) i;
  2762. i | to_timestamp
  2763. ---+-------------------------------------
  2764. 1 | Fri Nov 02 12:34:56.1 2018 PDT
  2765. 2 | Fri Nov 02 12:34:56.12 2018 PDT
  2766. 3 | Fri Nov 02 12:34:56.123 2018 PDT
  2767. 4 | Fri Nov 02 12:34:56.1235 2018 PDT
  2768. 5 | Fri Nov 02 12:34:56.12346 2018 PDT
  2769. 6 | Fri Nov 02 12:34:56.123456 2018 PDT
  2770. (6 rows)
  2771. SELECT i, to_timestamp('2018-11-02 12:34:56.123456789', 'YYYY-MM-DD HH24:MI:SS.FF' || i) FROM generate_series(1, 6) i;
  2772. ERROR: date/time field value out of range: "2018-11-02 12:34:56.123456789"
  2773. SELECT to_date('1 4 1902', 'Q MM YYYY'); -- Q is ignored
  2774. to_date
  2775. ------------
  2776. 04-01-1902
  2777. (1 row)
  2778. SELECT to_date('3 4 21 01', 'W MM CC YY');
  2779. to_date
  2780. ------------
  2781. 04-15-2001
  2782. (1 row)
  2783. SELECT to_date('2458872', 'J');
  2784. to_date
  2785. ------------
  2786. 01-23-2020
  2787. (1 row)
  2788. --
  2789. -- Check handling of BC dates
  2790. --
  2791. SELECT to_date('44-02-01 BC','YYYY-MM-DD BC');
  2792. to_date
  2793. ---------------
  2794. 02-01-0044 BC
  2795. (1 row)
  2796. SELECT to_date('-44-02-01','YYYY-MM-DD');
  2797. to_date
  2798. ---------------
  2799. 02-01-0044 BC
  2800. (1 row)
  2801. SELECT to_date('-44-02-01 BC','YYYY-MM-DD BC');
  2802. to_date
  2803. ------------
  2804. 02-01-0044
  2805. (1 row)
  2806. SELECT to_timestamp('44-02-01 11:12:13 BC','YYYY-MM-DD HH24:MI:SS BC');
  2807. to_timestamp
  2808. ---------------------------------
  2809. Fri Feb 01 11:12:13 0044 PST BC
  2810. (1 row)
  2811. SELECT to_timestamp('-44-02-01 11:12:13','YYYY-MM-DD HH24:MI:SS');
  2812. to_timestamp
  2813. ---------------------------------
  2814. Fri Feb 01 11:12:13 0044 PST BC
  2815. (1 row)
  2816. SELECT to_timestamp('-44-02-01 11:12:13 BC','YYYY-MM-DD HH24:MI:SS BC');
  2817. to_timestamp
  2818. ------------------------------
  2819. Mon Feb 01 11:12:13 0044 PST
  2820. (1 row)
  2821. --
  2822. -- Check handling of multiple spaces in format and/or input
  2823. --
  2824. SELECT to_timestamp('2011-12-18 23:38:15', 'YYYY-MM-DD HH24:MI:SS');
  2825. to_timestamp
  2826. ------------------------------
  2827. Sun Dec 18 23:38:15 2011 PST
  2828. (1 row)
  2829. SELECT to_timestamp('2011-12-18 23:38:15', 'YYYY-MM-DD HH24:MI:SS');
  2830. to_timestamp
  2831. ------------------------------
  2832. Sun Dec 18 23:38:15 2011 PST
  2833. (1 row)
  2834. SELECT to_timestamp('2011-12-18 23:38:15', 'YYYY-MM-DD HH24:MI:SS');
  2835. to_timestamp
  2836. ------------------------------
  2837. Sun Dec 18 23:38:15 2011 PST
  2838. (1 row)
  2839. SELECT to_timestamp('2011-12-18 23:38:15', 'YYYY-MM-DD HH24:MI:SS');
  2840. to_timestamp
  2841. ------------------------------
  2842. Sun Dec 18 23:38:15 2011 PST
  2843. (1 row)
  2844. SELECT to_timestamp('2011-12-18 23:38:15', 'YYYY-MM-DD HH24:MI:SS');
  2845. to_timestamp
  2846. ------------------------------
  2847. Sun Dec 18 23:38:15 2011 PST
  2848. (1 row)
  2849. SELECT to_timestamp('2011-12-18 23:38:15', 'YYYY-MM-DD HH24:MI:SS');
  2850. to_timestamp
  2851. ------------------------------
  2852. Sun Dec 18 23:38:15 2011 PST
  2853. (1 row)
  2854. SELECT to_timestamp('2000+ JUN', 'YYYY/MON');
  2855. to_timestamp
  2856. ------------------------------
  2857. Thu Jun 01 00:00:00 2000 PDT
  2858. (1 row)
  2859. SELECT to_timestamp(' 2000 +JUN', 'YYYY/MON');
  2860. to_timestamp
  2861. ------------------------------
  2862. Thu Jun 01 00:00:00 2000 PDT
  2863. (1 row)
  2864. SELECT to_timestamp(' 2000 +JUN', 'YYYY//MON');
  2865. to_timestamp
  2866. ------------------------------
  2867. Thu Jun 01 00:00:00 2000 PDT
  2868. (1 row)
  2869. SELECT to_timestamp('2000 +JUN', 'YYYY//MON');
  2870. to_timestamp
  2871. ------------------------------
  2872. Thu Jun 01 00:00:00 2000 PDT
  2873. (1 row)
  2874. SELECT to_timestamp('2000 + JUN', 'YYYY MON');
  2875. to_timestamp
  2876. ------------------------------
  2877. Thu Jun 01 00:00:00 2000 PDT
  2878. (1 row)
  2879. SELECT to_timestamp('2000 ++ JUN', 'YYYY MON');
  2880. to_timestamp
  2881. ------------------------------
  2882. Thu Jun 01 00:00:00 2000 PDT
  2883. (1 row)
  2884. SELECT to_timestamp('2000 + + JUN', 'YYYY MON');
  2885. ERROR: invalid value "+" for "MON"
  2886. DETAIL: The given value did not match any of the allowed values for this field.
  2887. SELECT to_timestamp('2000 + + JUN', 'YYYY MON');
  2888. to_timestamp
  2889. ------------------------------
  2890. Thu Jun 01 00:00:00 2000 PDT
  2891. (1 row)
  2892. SELECT to_timestamp('2000 -10', 'YYYY TZH');
  2893. to_timestamp
  2894. ------------------------------
  2895. Sat Jan 01 02:00:00 2000 PST
  2896. (1 row)
  2897. SELECT to_timestamp('2000 -10', 'YYYY TZH');
  2898. to_timestamp
  2899. ------------------------------
  2900. Fri Dec 31 06:00:00 1999 PST
  2901. (1 row)
  2902. SELECT to_date('2011 12 18', 'YYYY MM DD');
  2903. to_date
  2904. ------------
  2905. 12-18-2011
  2906. (1 row)
  2907. SELECT to_date('2011 12 18', 'YYYY MM DD');
  2908. to_date
  2909. ------------
  2910. 12-18-2011
  2911. (1 row)
  2912. SELECT to_date('2011 12 18', 'YYYY MM DD');
  2913. to_date
  2914. ------------
  2915. 12-18-2011
  2916. (1 row)
  2917. SELECT to_date('2011 12 18', 'YYYY MM DD');
  2918. to_date
  2919. ------------
  2920. 12-18-2011
  2921. (1 row)
  2922. SELECT to_date('2011 12 18', 'YYYY MM DD');
  2923. to_date
  2924. ------------
  2925. 12-18-2011
  2926. (1 row)
  2927. SELECT to_date('2011 12 18', 'YYYY MM DD');
  2928. to_date
  2929. ------------
  2930. 12-18-2011
  2931. (1 row)
  2932. SELECT to_date('2011 12 18', 'YYYYxMMxDD');
  2933. to_date
  2934. ------------
  2935. 12-18-2011
  2936. (1 row)
  2937. SELECT to_date('2011x 12x 18', 'YYYYxMMxDD');
  2938. to_date
  2939. ------------
  2940. 12-18-2011
  2941. (1 row)
  2942. SELECT to_date('2011 x12 x18', 'YYYYxMMxDD');
  2943. ERROR: invalid value "x1" for "MM"
  2944. DETAIL: Value must be an integer.
  2945. --
  2946. -- Check errors for some incorrect usages of to_timestamp() and to_date()
  2947. --
  2948. -- Mixture of date conventions (ISO week and Gregorian):
  2949. SELECT to_timestamp('2005527', 'YYYYIWID');
  2950. ERROR: invalid combination of date conventions
  2951. HINT: Do not mix Gregorian and ISO week date conventions in a formatting template.
  2952. -- Insufficient characters in the source string:
  2953. SELECT to_timestamp('19971', 'YYYYMMDD');
  2954. ERROR: source string too short for "MM" formatting field
  2955. DETAIL: Field requires 2 characters, but only 1 remain.
  2956. HINT: If your source string is not fixed-width, try using the "FM" modifier.
  2957. -- Insufficient digit characters for a single node:
  2958. SELECT to_timestamp('19971)24', 'YYYYMMDD');
  2959. ERROR: invalid value "1)" for "MM"
  2960. DETAIL: Field requires 2 characters, but only 1 could be parsed.
  2961. HINT: If your source string is not fixed-width, try using the "FM" modifier.
  2962. -- We don't accept full-length day or month names if short form is specified:
  2963. SELECT to_timestamp('Friday 1-January-1999', 'DY DD MON YYYY');
  2964. ERROR: invalid value "da" for "DD"
  2965. DETAIL: Value must be an integer.
  2966. SELECT to_timestamp('Fri 1-January-1999', 'DY DD MON YYYY');
  2967. ERROR: invalid value "uary" for "YYYY"
  2968. DETAIL: Value must be an integer.
  2969. SELECT to_timestamp('Fri 1-Jan-1999', 'DY DD MON YYYY'); -- ok
  2970. to_timestamp
  2971. ------------------------------
  2972. Fri Jan 01 00:00:00 1999 PST
  2973. (1 row)
  2974. -- Value clobbering:
  2975. SELECT to_timestamp('1997-11-Jan-16', 'YYYY-MM-Mon-DD');
  2976. ERROR: conflicting values for "Mon" field in formatting string
  2977. DETAIL: This value contradicts a previous setting for the same field type.
  2978. -- Non-numeric input:
  2979. SELECT to_timestamp('199711xy', 'YYYYMMDD');
  2980. ERROR: invalid value "xy" for "DD"
  2981. DETAIL: Value must be an integer.
  2982. -- Input that doesn't fit in an int:
  2983. SELECT to_timestamp('10000000000', 'FMYYYY');
  2984. ERROR: value for "YYYY" in source string is out of range
  2985. DETAIL: Value must be in the range -2147483648 to 2147483647.
  2986. -- Out-of-range and not-quite-out-of-range fields:
  2987. SELECT to_timestamp('2016-06-13 25:00:00', 'YYYY-MM-DD HH24:MI:SS');
  2988. ERROR: date/time field value out of range: "2016-06-13 25:00:00"
  2989. SELECT to_timestamp('2016-06-13 15:60:00', 'YYYY-MM-DD HH24:MI:SS');
  2990. ERROR: date/time field value out of range: "2016-06-13 15:60:00"
  2991. SELECT to_timestamp('2016-06-13 15:50:60', 'YYYY-MM-DD HH24:MI:SS');
  2992. ERROR: date/time field value out of range: "2016-06-13 15:50:60"
  2993. SELECT to_timestamp('2016-06-13 15:50:55', 'YYYY-MM-DD HH24:MI:SS'); -- ok
  2994. to_timestamp
  2995. ------------------------------
  2996. Mon Jun 13 15:50:55 2016 PDT
  2997. (1 row)
  2998. SELECT to_timestamp('2016-06-13 15:50:55', 'YYYY-MM-DD HH:MI:SS');
  2999. ERROR: hour "15" is invalid for the 12-hour clock
  3000. HINT: Use the 24-hour clock, or give an hour between 1 and 12.
  3001. SELECT to_timestamp('2016-13-01 15:50:55', 'YYYY-MM-DD HH24:MI:SS');
  3002. ERROR: date/time field value out of range: "2016-13-01 15:50:55"
  3003. SELECT to_timestamp('2016-02-30 15:50:55', 'YYYY-MM-DD HH24:MI:SS');
  3004. ERROR: date/time field value out of range: "2016-02-30 15:50:55"
  3005. SELECT to_timestamp('2016-02-29 15:50:55', 'YYYY-MM-DD HH24:MI:SS'); -- ok
  3006. to_timestamp
  3007. ------------------------------
  3008. Mon Feb 29 15:50:55 2016 PST
  3009. (1 row)
  3010. SELECT to_timestamp('2015-02-29 15:50:55', 'YYYY-MM-DD HH24:MI:SS');
  3011. ERROR: date/time field value out of range: "2015-02-29 15:50:55"
  3012. SELECT to_timestamp('2015-02-11 86000', 'YYYY-MM-DD SSSS'); -- ok
  3013. to_timestamp
  3014. ------------------------------
  3015. Wed Feb 11 23:53:20 2015 PST
  3016. (1 row)
  3017. SELECT to_timestamp('2015-02-11 86400', 'YYYY-MM-DD SSSS');
  3018. ERROR: date/time field value out of range: "2015-02-11 86400"
  3019. SELECT to_timestamp('2015-02-11 86000', 'YYYY-MM-DD SSSSS'); -- ok
  3020. to_timestamp
  3021. ------------------------------
  3022. Wed Feb 11 23:53:20 2015 PST
  3023. (1 row)
  3024. SELECT to_timestamp('2015-02-11 86400', 'YYYY-MM-DD SSSSS');
  3025. ERROR: date/time field value out of range: "2015-02-11 86400"
  3026. SELECT to_date('2016-13-10', 'YYYY-MM-DD');
  3027. ERROR: date/time field value out of range: "2016-13-10"
  3028. SELECT to_date('2016-02-30', 'YYYY-MM-DD');
  3029. ERROR: date/time field value out of range: "2016-02-30"
  3030. SELECT to_date('2016-02-29', 'YYYY-MM-DD'); -- ok
  3031. to_date
  3032. ------------
  3033. 02-29-2016
  3034. (1 row)
  3035. SELECT to_date('2015-02-29', 'YYYY-MM-DD');
  3036. ERROR: date/time field value out of range: "2015-02-29"
  3037. SELECT to_date('2015 365', 'YYYY DDD'); -- ok
  3038. to_date
  3039. ------------
  3040. 12-31-2015
  3041. (1 row)
  3042. SELECT to_date('2015 366', 'YYYY DDD');
  3043. ERROR: date/time field value out of range: "2015 366"
  3044. SELECT to_date('2016 365', 'YYYY DDD'); -- ok
  3045. to_date
  3046. ------------
  3047. 12-30-2016
  3048. (1 row)
  3049. SELECT to_date('2016 366', 'YYYY DDD'); -- ok
  3050. to_date
  3051. ------------
  3052. 12-31-2016
  3053. (1 row)
  3054. SELECT to_date('2016 367', 'YYYY DDD');
  3055. ERROR: date/time field value out of range: "2016 367"
  3056. SELECT to_date('0000-02-01','YYYY-MM-DD'); -- allowed, though it shouldn't be
  3057. to_date
  3058. ---------------
  3059. 02-01-0001 BC
  3060. (1 row)
  3061. --
  3062. -- Check behavior with SQL-style fixed-GMT-offset time zone (cf bug #8572)
  3063. --
  3064. SET TIME ZONE 'America/New_York';
  3065. SET TIME ZONE '-1.5';
  3066. SHOW TIME ZONE;
  3067. TimeZone
  3068. ----------------
  3069. <-01:30>+01:30
  3070. (1 row)
  3071. SELECT '2012-12-12 12:00'::timestamptz;
  3072. timestamptz
  3073. ---------------------------------
  3074. Wed Dec 12 12:00:00 2012 -01:30
  3075. (1 row)
  3076. SELECT '2012-12-12 12:00 America/New_York'::timestamptz;
  3077. timestamptz
  3078. ---------------------------------
  3079. Wed Dec 12 15:30:00 2012 -01:30
  3080. (1 row)
  3081. SELECT to_char('2012-12-12 12:00'::timestamptz, 'YYYY-MM-DD HH:MI:SS TZ');
  3082. to_char
  3083. ----------------------------
  3084. 2012-12-12 12:00:00 -01:30
  3085. (1 row)
  3086. SELECT to_char('2012-12-12 12:00'::timestamptz, 'YYYY-MM-DD SSSS');
  3087. to_char
  3088. ------------------
  3089. 2012-12-12 43200
  3090. (1 row)
  3091. SELECT to_char('2012-12-12 12:00'::timestamptz, 'YYYY-MM-DD SSSSS');
  3092. to_char
  3093. ------------------
  3094. 2012-12-12 43200
  3095. (1 row)
  3096. RESET TIME ZONE;