{"id":766,"date":"2024-12-08T17:45:26","date_gmt":"2024-12-08T10:45:26","guid":{"rendered":"https:\/\/www.pgtutorial.com\/?page_id=766"},"modified":"2025-01-02T14:13:17","modified_gmt":"2025-01-02T07:13:17","slug":"postgresql-timestamp-with-time-zone","status":"publish","type":"page","link":"https:\/\/www.pgtutorial.com\/postgresql-tutorial\/postgresql-timestamp-with-time-zone\/","title":{"rendered":"PostgreSQL TIMESTAMP WITH TIME ZONE Data Type"},"content":{"rendered":"\n<p><strong>Summary<\/strong>: in this tutorial, you&#8217;ll learn how to use the PostgreSQL <code>TIMESTAMP WITH TIME ZONE<\/code> data type to handle timestamp values with time zone.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id='getting-started-with-the-postgresql-timestamp-with-time-zone-data-type'>Getting Started with the PostgreSQL TIMESTAMP WITH TIME ZONE data type <a href=\"#getting-started-with-the-postgresql-timestamp-with-time-zone-data-type\" class=\"anchor\" id=\"getting-started-with-the-postgresql-timestamp-with-time-zone-data-type\" title=\"Anchor for Getting Started with the PostgreSQL TIMESTAMP WITH TIME ZONE data type\">#<\/a><\/h2>\n\n\n\n<p>In PostgreSQL, you can use the <code>TIMESTAMP WITH TIME ZONE<\/code> data type to store time zone-aware timestamp values.<\/p>\n\n\n\n<p>Here&#8217;s the syntax for defining a column with the type <code>TIMESTAMP WITH TIME ZONE<\/code>:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"PostgreSQL SQL dialect and PL\/pgSQL\" data-shcb-language-slug=\"pgsql\"><span><code class=\"hljs language-pgsql\"><span class=\"hljs-keyword\">CREATE<\/span> <span class=\"hljs-keyword\">TABLE<\/span> <span class=\"hljs-built_in\">table_name<\/span>(\n\u00a0 \u00a0\u00a0<span class=\"hljs-built_in\">column_name<\/span> <span class=\"hljs-type\">TIMESTAMP<\/span> <span class=\"hljs-type\">WITH TIME ZONE<\/span>,\n    ...\n);<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PostgreSQL SQL dialect and PL\/pgSQL<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">pgsql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p><code>TIMESTAMPTZ<\/code> is the shorthand of the <code>TIMESTAMP WITH TIME ZONE<\/code>, so you can use it to save some typing:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"PostgreSQL SQL dialect and PL\/pgSQL\" data-shcb-language-slug=\"pgsql\"><span><code class=\"hljs language-pgsql\"><span class=\"hljs-keyword\">CREATE<\/span> <span class=\"hljs-keyword\">TABLE<\/span> <span class=\"hljs-built_in\">table_name<\/span>(\n\u00a0 \u00a0\u00a0<span class=\"hljs-built_in\">column_name<\/span> <span class=\"hljs-type\">TIMESTAMPTZ<\/span>,\n    ...\n);<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PostgreSQL SQL dialect and PL\/pgSQL<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">pgsql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>When you insert a timestamp into a <code>TIMESTAMPTZ<\/code> column, PostgreSQL converts it to UTC for storage. This conversion ensures the stored timestamp is consistent and not affected by time zone differences.<\/p>\n\n\n\n<p>When you retrieve a timestamp from a <code>TIMESTAMPTZ<\/code> column, PostgreSQL converts the stored UTC timestamp back to the time zone of your session. This conversion means that the time you receive is adjusted to the time zone set by your database session.<\/p>\n\n\n\n<p>It&#8217;s important to note that PostgreSQL does not store time zones in the <code>TIMESTAMPTZ<\/code> column but does the time zone conversion when stored and retrieved.<\/p>\n\n\n\n<p>You can set the time zone of your database session using the <code>SET TIME ZONE<\/code> statement. For example:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"PostgreSQL SQL dialect and PL\/pgSQL\" data-shcb-language-slug=\"pgsql\"><span><code class=\"hljs language-pgsql\"><span class=\"hljs-keyword\">SET<\/span> <span class=\"hljs-type\">TIME<\/span> <span class=\"hljs-type\">ZONE<\/span> <span class=\"hljs-string\">'America\/New_York'<\/span>;<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PostgreSQL SQL dialect and PL\/pgSQL<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">pgsql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>The <code>TIMESTAMPTZ<\/code> can automatically handle daylight saving time changes and other time zone-related adjustments.<\/p>\n\n\n\n<p>In practice, you&#8217;ll often use the <code>TIMESTAMP WITH TIME ZONE<\/code> data type in applications that handle time across time zones, such as scheduling apps, international transactions, and logging events.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id='getting-the-current-timestamp-with-a-time-zone'>Getting the current timestamp with a time zone <a href=\"#getting-the-current-timestamp-with-a-time-zone\" class=\"anchor\" id=\"getting-the-current-timestamp-with-a-time-zone\" title=\"Anchor for Getting the current timestamp with a time zone\">#<\/a><\/h2>\n\n\n\n<p>The <code>CURRENT_TIMESTAMP<\/code> function returns the current time with a time zone.<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-4\" data-shcb-language-name=\"PostgreSQL SQL dialect and PL\/pgSQL\" data-shcb-language-slug=\"pgsql\"><span><code class=\"hljs language-pgsql\"><span class=\"hljs-keyword\">SELECT<\/span> <span class=\"hljs-built_in\">CURRENT_TIMESTAMP<\/span>;<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-4\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PostgreSQL SQL dialect and PL\/pgSQL<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">pgsql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>Output:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-5\" data-shcb-language-name=\"PostgreSQL SQL dialect and PL\/pgSQL\" data-shcb-language-slug=\"pgsql\"><span><code class=\"hljs language-pgsql\">       <span class=\"hljs-built_in\">current_timestamp<\/span>\n<span class=\"hljs-comment\">-------------------------------<\/span>\n <span class=\"hljs-number\">2024<\/span><span class=\"hljs-number\">-12<\/span><span class=\"hljs-number\">-08<\/span> <span class=\"hljs-number\">02<\/span>:<span class=\"hljs-number\">42<\/span>:<span class=\"hljs-number\">59.773965<\/span><span class=\"hljs-number\">-08<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-5\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PostgreSQL SQL dialect and PL\/pgSQL<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">pgsql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>It shows the current time in the<code> 'US\/Pacific'<\/code> time zone.<\/p>\n\n\n\n<p>To set the time zone of your database session to a different one, you use the <code>SET TIME ZONE<\/code> statement:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-6\" data-shcb-language-name=\"PostgreSQL SQL dialect and PL\/pgSQL\" data-shcb-language-slug=\"pgsql\"><span><code class=\"hljs language-pgsql\"><span class=\"hljs-keyword\">SET<\/span> <span class=\"hljs-type\">TIME<\/span> <span class=\"hljs-type\">ZONE<\/span> <span class=\"hljs-string\">'America\/New_York'<\/span>;<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-6\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PostgreSQL SQL dialect and PL\/pgSQL<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">pgsql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>If you get the current timestamp again, you&#8217;ll see the time is adjusted to the &#8216;America\/New_York&#8217; time zone:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-7\" data-shcb-language-name=\"PostgreSQL SQL dialect and PL\/pgSQL\" data-shcb-language-slug=\"pgsql\"><span><code class=\"hljs language-pgsql\"><span class=\"hljs-keyword\">SELECT<\/span> <span class=\"hljs-built_in\">CURRENT_TIMESTAMP<\/span>;<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-7\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PostgreSQL SQL dialect and PL\/pgSQL<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">pgsql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>Output:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-8\" data-shcb-language-name=\"PostgreSQL SQL dialect and PL\/pgSQL\" data-shcb-language-slug=\"pgsql\"><span><code class=\"hljs language-pgsql\">       <span class=\"hljs-built_in\">current_timestamp<\/span>\n<span class=\"hljs-comment\">-------------------------------<\/span>\n <span class=\"hljs-number\">2024<\/span><span class=\"hljs-number\">-12<\/span><span class=\"hljs-number\">-08<\/span> <span class=\"hljs-number\">05<\/span>:<span class=\"hljs-number\">43<\/span>:<span class=\"hljs-number\">11.587639<\/span><span class=\"hljs-number\">-05<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-8\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PostgreSQL SQL dialect and PL\/pgSQL<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">pgsql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>To get a list of supported time zone names, you use the following statement:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-9\" data-shcb-language-name=\"PostgreSQL SQL dialect and PL\/pgSQL\" data-shcb-language-slug=\"pgsql\"><span><code class=\"hljs language-pgsql\"><span class=\"hljs-keyword\">SELECT<\/span>\n  <span class=\"hljs-type\">name<\/span>,\n  abbrev,\n  utc_offset,\n  is_dst\n<span class=\"hljs-keyword\">FROM<\/span>\n  pg_timezone_names;<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-9\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PostgreSQL SQL dialect and PL\/pgSQL<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">pgsql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p><a href=\"https:\/\/www.pgtutorial.com\/playground\/?q=U0VMRUNUIG5hbWUsIGFiYnJldiwgdXRjX29mZnNldCwgaXNfZHN0IEZST00gcGdfdGltZXpvbmVfbmFtZXM7\" target=\"_blank\" rel=\"noreferrer noopener\">Try it<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id='setting-a-default-value-for-a-timestamptz-column'>Setting a default value for a TIMESTAMPTZ column <a href=\"#setting-a-default-value-for-a-timestamptz-column\" class=\"anchor\" id=\"setting-a-default-value-for-a-timestamptz-column\" title=\"Anchor for Setting a default value for a TIMESTAMPTZ column\">#<\/a><\/h2>\n\n\n\n<p>To set a default value for a <code>TIMESTAMPTZ<\/code> column, you can use a DEFAULT constraint:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-10\" data-shcb-language-name=\"PostgreSQL SQL dialect and PL\/pgSQL\" data-shcb-language-slug=\"pgsql\"><span><code class=\"hljs language-pgsql\"><span class=\"hljs-keyword\">CREATE<\/span> <span class=\"hljs-keyword\">TABLE<\/span> <span class=\"hljs-built_in\">table_name<\/span>(\n\u00a0 \u00a0\u00a0<span class=\"hljs-built_in\">column_name<\/span> <span class=\"hljs-type\">TIMESTAMPTZ<\/span> <span class=\"hljs-keyword\">DEFAULT<\/span> <span class=\"hljs-built_in\">CURRENT_TIMESTAMP<\/span>\n);<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-10\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PostgreSQL SQL dialect and PL\/pgSQL<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">pgsql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>In this example, if you insert or update the <code>TIMESTAMPTZ<\/code> column without providing a value, PostgreSQL will use the current timestamp returned by the <code>CURRENT_TIMESTAMP<\/code> function for inserting or updating.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id='postgresql-timestamptz-data-type-example'>PostgreSQL TIMESTAMPTZ data type example <a href=\"#postgresql-timestamptz-data-type-example\" class=\"anchor\" id=\"postgresql-timestamptz-data-type-example\" title=\"Anchor for PostgreSQL TIMESTAMPTZ data type example\">#<\/a><\/h2>\n\n\n\n<p>First, <a href=\"https:\/\/www.pgtutorial.com\/postgresql-tutorial\/postgresql-create-table\/\">create a table<\/a> called <code>inventory_scans<\/code> that tracks scanned products in the inventory:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-11\" data-shcb-language-name=\"PostgreSQL SQL dialect and PL\/pgSQL\" data-shcb-language-slug=\"pgsql\"><span><code class=\"hljs language-pgsql\"><span class=\"hljs-keyword\">CREATE<\/span> <span class=\"hljs-keyword\">TABLE<\/span> inventory_scans (\n  scan_id <span class=\"hljs-type\">INT<\/span> <span class=\"hljs-keyword\">GENERATED<\/span> <span class=\"hljs-keyword\">ALWAYS<\/span> <span class=\"hljs-keyword\">AS<\/span> <span class=\"hljs-keyword\">IDENTITY<\/span> <span class=\"hljs-keyword\">PRIMARY KEY<\/span>,\n  warehouse_id <span class=\"hljs-type\">INT<\/span> <span class=\"hljs-keyword\">NOT<\/span> <span class=\"hljs-keyword\">NULL<\/span>,\n  product_id <span class=\"hljs-type\">INT<\/span> <span class=\"hljs-keyword\">NOT<\/span> <span class=\"hljs-keyword\">NULL<\/span>,\n  serial_no <span class=\"hljs-type\">VARCHAR<\/span>(<span class=\"hljs-number\">25<\/span>) <span class=\"hljs-keyword\">NOT<\/span> <span class=\"hljs-keyword\">NULL<\/span>,\n  quantity <span class=\"hljs-type\">INT<\/span> <span class=\"hljs-keyword\">NOT<\/span> <span class=\"hljs-keyword\">NULL<\/span>,\n  scanned_at <span class=\"hljs-type\">TIMESTAMPTZ<\/span> <span class=\"hljs-keyword\">NOT<\/span> <span class=\"hljs-keyword\">NULL<\/span> <span class=\"hljs-keyword\">DEFAULT<\/span> <span class=\"hljs-built_in\">CURRENT_TIMESTAMP<\/span>\n);<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-11\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PostgreSQL SQL dialect and PL\/pgSQL<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">pgsql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p><a href=\"https:\/\/www.pgtutorial.com\/playground\/?q=Q1JFQVRFIFRBQkxFIGludmVudG9yeV9zY2FucyAoIHNjYW5faWQgSU5UIEdFTkVSQVRFRCBBTFdBWVMgQVMgSURFTlRJVFkgUFJJTUFSWSBLRVksIHdhcmVob3VzZV9pZCBJTlQgTk9UIE5VTEwsIHByb2R1Y3RfaWQgSU5UIE5PVCBOVUxMLCBzZXJpYWxfbm8gVkFSQ0hBUigyNSkgTk9UIE5VTEwsIHF1YW50aXR5IElOVCBOT1QgTlVMTCwgc2Nhbm5lZF9hdCBUSU1FU1RBTVBUWiBOT1QgTlVMTCBERUZBVUxUIENVUlJFTlRfVElNRVNUQU1QICk7\" target=\"_blank\" rel=\"noreferrer noopener\">Try it<\/a><\/p>\n\n\n\n<p>Second, <a href=\"https:\/\/www.pgtutorial.com\/postgresql-tutorial\/postgresql-insert\/\">insert some rows<\/a> into the <code>inventory_scans<\/code> table:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-12\" data-shcb-language-name=\"PostgreSQL SQL dialect and PL\/pgSQL\" data-shcb-language-slug=\"pgsql\"><span><code class=\"hljs language-pgsql\"><span class=\"hljs-keyword\">INSERT<\/span> <span class=\"hljs-keyword\">INTO<\/span>\n  inventory_scans (warehouse_id, product_id, serial_no, quantity)\n<span class=\"hljs-keyword\">VALUES<\/span>\n  (<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">1<\/span>, <span class=\"hljs-string\">'F2LZK3H8N72Q'<\/span>, <span class=\"hljs-number\">1<\/span>),\n  (<span class=\"hljs-number\">2<\/span>, <span class=\"hljs-number\">1<\/span>, <span class=\"hljs-string\">'R58N40Y1A2B3'<\/span>, <span class=\"hljs-number\">1<\/span>) \n<span class=\"hljs-keyword\">RETURNING<\/span> *;<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-12\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PostgreSQL SQL dialect and PL\/pgSQL<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">pgsql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p><a href=\"https:\/\/www.pgtutorial.com\/playground\/?q=SU5TRVJUIElOVE8gaW52ZW50b3J5X3NjYW5zICh3YXJlaG91c2VfaWQsIHByb2R1Y3RfaWQsIHNlcmlhbF9ubywgcXVhbnRpdHkpIFZBTFVFUyAoMSwgMSwgJ0YyTFpLM0g4TjcyUScsIDEpLCAoMiwgMSwgJ1I1OE40MFkxQTJCMycsIDEpIFJFVFVSTklORyAqOw%3D%3D\" target=\"_blank\" rel=\"noreferrer noopener\">Try it<\/a><\/p>\n\n\n\n<p>Output:<\/p>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\"> scan_id | warehouse_id | product_id |  serial_no   | quantity |          scanned_at\n---------+--------------+------------+--------------+----------+-------------------------------\n       1 |            1 |          1 | F2LZK3H8N72Q |        1 | 2024-12-08 05:44:11.998853-05\n       2 |            2 |          1 | R58N40Y1A2B3 |        1 | 2024-12-08 05:44:11.998853-05<\/code><\/span><\/pre>\n\n\n<h2 class=\"wp-block-heading\" id='summary'>Summary <a href=\"#summary\" class=\"anchor\" id=\"summary\" title=\"Anchor for Summary\">#<\/a><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Use the PostgreSQL <code>TIMESTAMP WITH TIME ZONE<\/code> data type (or <code>TIMESTAMPTZ<\/code>) to handle timestamp values with time zone.<\/li>\n\n\n\n<li>Use the <code>CURRENT_TIMESTAMP<\/code> to get the current timestamp with a time zone.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id='quiz'>Quiz <a href=\"#quiz\" class=\"anchor\" id=\"quiz\" title=\"Anchor for Quiz\">#<\/a><\/h2>\n\n\n\n<iframe loading=\"lazy\"\n  name=\"quiz\"\n  src=\"\/quiz\/?quiz=timestamptz\"\n  height=\"700\"\n  width=\"600\"\n  class=\"iframe\"\n><\/iframe>\n\n<div class=\"helpful-block-content\" data-title=\"\">\n\t<header>\n\t\t<div class=\"wth-question\">Was this tutorial helpful ?<\/div>\n\t\t<div class=\"wth-thumbs\">\n\t\t\t<button\n\t\t\t\tdata-post=\"766\"\n\t\t\t\tdata-post-url=\"https:\/\/www.pgtutorial.com\/postgresql-tutorial\/postgresql-timestamp-with-time-zone\/\"\n\t\t\t\tdata-post-title=\"PostgreSQL TIMESTAMP WITH TIME ZONE Data Type\"\n\t\t\t\tdata-response=\"1\"\n\t\t\t\tclass=\"wth-btn-rounded wth-yes-btn\"\n\t\t\t>\n\t\t\t\t<svg\n\t\t\t\t\txmlns=\"http:\/\/www.w3.org\/2000\/svg\"\n\t\t\t\t\tviewBox=\"0 0 24 24\"\n\t\t\t\t\tfill=\"none\"\n\t\t\t\t\tstroke=\"currentColor\"\n\t\t\t\t\tstroke-width=\"2\"\n\t\t\t\t\tstroke-linecap=\"round\"\n\t\t\t\t\tstroke-linejoin=\"round\"\n\t\t\t\t\tclass=\"feather feather-thumbs-up block w-full h-full\"\n\t\t\t\t>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M14 9V5a3 3 0 0 0-3-3l-4 9v11h11.28a2 2 0 0 0 2-1.7l1.38-9a2 2 0 0 0-2-2.3zM7 22H4a2 2 0 0 1-2-2v-7a2 2 0 0 1 2-2h3\"\n\t\t\t\t\t><\/path>\n\t\t\t\t<\/svg>\n\t\t\t\t<span class=\"sr-only\"> Yes <\/span>\n\t\t\t<\/button>\n\n\t\t\t<button\n\t\t\t\tdata-response=\"0\"\n\t\t\t\tdata-post=\"766\"\n\t\t\t\tdata-post-url=\"https:\/\/www.pgtutorial.com\/postgresql-tutorial\/postgresql-timestamp-with-time-zone\/\"\n\t\t\t\tdata-post-title=\"PostgreSQL TIMESTAMP WITH TIME ZONE Data Type\"\n\t\t\t\tclass=\"wth-btn-rounded wth-no-btn\"\n\t\t\t>\n\t\t\t\t<svg\n\t\t\t\t\txmlns=\"http:\/\/www.w3.org\/2000\/svg\"\n\t\t\t\t\tviewBox=\"0 0 24 24\"\n\t\t\t\t\tfill=\"none\"\n\t\t\t\t\tstroke=\"currentColor\"\n\t\t\t\t\tstroke-width=\"2\"\n\t\t\t\t\tstroke-linecap=\"round\"\n\t\t\t\t\tstroke-linejoin=\"round\"\n\t\t\t\t>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M10 15v4a3 3 0 0 0 3 3l4-9V2H5.72a2 2 0 0 0-2 1.7l-1.38 9a2 2 0 0 0 2 2.3zm7-13h2.67A2.31 2.31 0 0 1 22 4v7a2.31 2.31 0 0 1-2.33 2H17\"\n\t\t\t\t\t><\/path>\n\t\t\t\t<\/svg>\n\t\t\t\t<span class=\"sr-only\"> No <\/span>\n\t\t\t<\/button>\n\t\t<\/div>\n\t<\/header>\n\n\t<div class=\"wth-form hidden\">\n\t\t<div class=\"wth-form-wrapper\">\n\t\t\t<div class=\"wth-title\"><\/div>\n\t\t\t\n\t\t\t<textarea class=\"wth-message\"><\/textarea>\n\n\t\t\t<button class=\"btn btn-primary wth-btn-submit\">Send<\/button>\n\t\t\t<button class=\"btn wth-btn-cancel\">Cancel<\/button>\n\t\t\n\t\t<\/div>\n\t<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Summary: in this tutorial, you&#8217;ll learn how to use the PostgreSQL TIMESTAMP WITH TIME ZONE data type to handle timestamp values with time zone. Getting Started with the PostgreSQL TIMESTAMP WITH TIME ZONE data type # In PostgreSQL, you can use the TIMESTAMP WITH TIME ZONE data type to store time zone-aware timestamp values. Here&#8217;s [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":13,"menu_order":46,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-766","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>PostgreSQL TIMESTAMP WITH TIME ZONE Data Type<\/title>\n<meta name=\"description\" content=\"In this tutorial, you&#039;ll learn how to use the PostgreSQL TIMESTAMP WITH TIME ZONE data type to handle timestamp values with time zone.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.pgtutorial.com\/postgresql-tutorial\/postgresql-timestamp-with-time-zone\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"PostgreSQL TIMESTAMP WITH TIME ZONE Data Type\" \/>\n<meta property=\"og:description\" content=\"In this tutorial, you&#039;ll learn how to use the PostgreSQL TIMESTAMP WITH TIME ZONE data type to handle timestamp values with time zone.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.pgtutorial.com\/postgresql-tutorial\/postgresql-timestamp-with-time-zone\/\" \/>\n<meta property=\"og:site_name\" content=\"PostgreSQL Tutorial\" \/>\n<meta property=\"article:modified_time\" content=\"2025-01-02T07:13:17+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.pgtutorial.com\\\/postgresql-tutorial\\\/postgresql-timestamp-with-time-zone\\\/\",\"url\":\"https:\\\/\\\/www.pgtutorial.com\\\/postgresql-tutorial\\\/postgresql-timestamp-with-time-zone\\\/\",\"name\":\"PostgreSQL TIMESTAMP WITH TIME ZONE Data Type\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.pgtutorial.com\\\/#website\"},\"datePublished\":\"2024-12-08T10:45:26+00:00\",\"dateModified\":\"2025-01-02T07:13:17+00:00\",\"description\":\"In this tutorial, you'll learn how to use the PostgreSQL TIMESTAMP WITH TIME ZONE data type to handle timestamp values with time zone.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.pgtutorial.com\\\/postgresql-tutorial\\\/postgresql-timestamp-with-time-zone\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.pgtutorial.com\\\/postgresql-tutorial\\\/postgresql-timestamp-with-time-zone\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.pgtutorial.com\\\/postgresql-tutorial\\\/postgresql-timestamp-with-time-zone\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.pgtutorial.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"PostgreSQL Tutorial\",\"item\":\"https:\\\/\\\/www.pgtutorial.com\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"PostgreSQL TIMESTAMP WITH TIME ZONE Data Type\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.pgtutorial.com\\\/#website\",\"url\":\"https:\\\/\\\/www.pgtutorial.com\\\/\",\"name\":\"PostgreSQL Tutorial\",\"description\":\"Learn PostgreSQL from Scratch\",\"alternateName\":\"PostgreSQL\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.pgtutorial.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"PostgreSQL TIMESTAMP WITH TIME ZONE Data Type","description":"In this tutorial, you'll learn how to use the PostgreSQL TIMESTAMP WITH TIME ZONE data type to handle timestamp values with time zone.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.pgtutorial.com\/postgresql-tutorial\/postgresql-timestamp-with-time-zone\/","og_locale":"en_US","og_type":"article","og_title":"PostgreSQL TIMESTAMP WITH TIME ZONE Data Type","og_description":"In this tutorial, you'll learn how to use the PostgreSQL TIMESTAMP WITH TIME ZONE data type to handle timestamp values with time zone.","og_url":"https:\/\/www.pgtutorial.com\/postgresql-tutorial\/postgresql-timestamp-with-time-zone\/","og_site_name":"PostgreSQL Tutorial","article_modified_time":"2025-01-02T07:13:17+00:00","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.pgtutorial.com\/postgresql-tutorial\/postgresql-timestamp-with-time-zone\/","url":"https:\/\/www.pgtutorial.com\/postgresql-tutorial\/postgresql-timestamp-with-time-zone\/","name":"PostgreSQL TIMESTAMP WITH TIME ZONE Data Type","isPartOf":{"@id":"https:\/\/www.pgtutorial.com\/#website"},"datePublished":"2024-12-08T10:45:26+00:00","dateModified":"2025-01-02T07:13:17+00:00","description":"In this tutorial, you'll learn how to use the PostgreSQL TIMESTAMP WITH TIME ZONE data type to handle timestamp values with time zone.","breadcrumb":{"@id":"https:\/\/www.pgtutorial.com\/postgresql-tutorial\/postgresql-timestamp-with-time-zone\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.pgtutorial.com\/postgresql-tutorial\/postgresql-timestamp-with-time-zone\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.pgtutorial.com\/postgresql-tutorial\/postgresql-timestamp-with-time-zone\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.pgtutorial.com\/"},{"@type":"ListItem","position":2,"name":"PostgreSQL Tutorial","item":"https:\/\/www.pgtutorial.com\/"},{"@type":"ListItem","position":3,"name":"PostgreSQL TIMESTAMP WITH TIME ZONE Data Type"}]},{"@type":"WebSite","@id":"https:\/\/www.pgtutorial.com\/#website","url":"https:\/\/www.pgtutorial.com\/","name":"PostgreSQL Tutorial","description":"Learn PostgreSQL from Scratch","alternateName":"PostgreSQL","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.pgtutorial.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/www.pgtutorial.com\/wp-json\/wp\/v2\/pages\/766","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.pgtutorial.com\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.pgtutorial.com\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.pgtutorial.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.pgtutorial.com\/wp-json\/wp\/v2\/comments?post=766"}],"version-history":[{"count":9,"href":"https:\/\/www.pgtutorial.com\/wp-json\/wp\/v2\/pages\/766\/revisions"}],"predecessor-version":[{"id":1369,"href":"https:\/\/www.pgtutorial.com\/wp-json\/wp\/v2\/pages\/766\/revisions\/1369"}],"up":[{"embeddable":true,"href":"https:\/\/www.pgtutorial.com\/wp-json\/wp\/v2\/pages\/13"}],"wp:attachment":[{"href":"https:\/\/www.pgtutorial.com\/wp-json\/wp\/v2\/media?parent=766"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}