我正在使用Rails4和PostgreSQL v9.6.2,我的问题是我想在Rails中处理输入时区中的datetime,它会正确地存储在PostreSQL中,但当我使用Rails检索它时,时区信息会丢失。
我在PostgreSQL中使用timestamp with time zone,在Rails中使用datetime。例如,当我在PostgreSQL上看到2012-10-26 19:26:00+02时,在Rails上我得到了Fri, 26 Oct 2012 17:26:00 UTC +00:00,这在技术上是相同的日期,但在UTC上,或者没有原始时区。我想从Rails获取存储在Postgr
我的团队在2个不同时区的相同数据库上运行相同的查询。查询返回不同的结果。我认为其中一个原因是我使用以下命令将时间戳列转换为日期: to_char(a.event_timestamp,'yyyy-mm-dd'::text) AS "date“ 此转换是否取决于系统的本地日期和时间?我正在测试数据库中以前的数据范围。
存储日期时间的实用方法是什么,这样我就可以让用户查看/查询自己的本地时间的数据,同时保留有关原始日期时间的信息。
基本上,用户希望能够查询(从他们自己的本地时间)从各个时区的系统收集的数据。但偶尔,他们想知道数据是在原始系统中的18:00创建的。当来自世界不同地区的用户就同一事件进行交流时,它会有所帮助。
User1: What? We don't have any data for 20:00
User2: Dude, it says 20:00 right there on my screen.
User1: Wait, what timezone are you? What
请参阅以下代码:
DECLARE @UKDateTime as DateTime
SELECT @UKDateTime = GETDATE() AT TIME ZONE 'GMT Standard Time'
print @UKDateTime
PRINT GETDATE()
这将返回:
Oct 4 2021 4:03PM
Oct 4 2021 4:03PM
目前在英国的时间是下午5:03分(正如我的个人电脑时钟所确认的)。它似乎正在返回世界协调时的日期。有什么问题吗?
我已经将Server设置为Docker容器。它是SQLServerv18.4。
我有带有PostgreSQL字段的timestamp with time zone数据库表,名为published_date。
我使用psql -U postgres dbname命令访问我的数据库。
当我尝试通过命令更新published_date字段值时:
UPDATE mytable SET published_date='PUBLISHED_DATE' WHERE id=3;
对于相应的PUBLISHED_DATEs,我得到以下结果:
SOURCE -> RESULT
2013-01-16 20:00:00 -> 2013-01-
Unix时间戳是从1970年1月1日午夜开始的秒数。
如何从PostgreSQL获得正确的unix时间戳?
与currenttimestamp.com和timestamp.1e5b.de相比,我无法从PostgreSQL获得预期的时间:
这将返回正确的时间戳:
SELECT extract(epoch from now());
虽然这并不是:
SELECT extract(epoch from now() at time zone 'utc');
我住在UTC +02时区。从PostgreSQL获得当前unix时间戳的正确方法是什么?
这将返回正确的时间和时区:
SELECT
使用下面的查询从oracle数据库检索UTC时间戳会引起问题吗?我不想为了检索正确的日期而更改数据库时区参数。我不想做alter database set time_zone。
我现在的问题是:
select from_tz(CAST (sys_extract_utc(systimestamp) AS TIMESTAMP), '+00:00') from dual;
我想知道,无论EST/EDT状态如何,在所有情况下,此查询是否会导致正确的UTC日期。
当查询SAP HANA时,我很难处理时区和夏令问题。日期时间戳的形式是NVARCHAR,例如UTC中的20210304132500 YYYYMMDDHHMISS,这意味着本地时间是14:25:00(GMT +01:00),但我的查询返回13:25:00 (UTC)。如何编辑我的结果以配合当地时间?下面的示例查询如果有帮助的话。
SELECT DATE_TIME,LOCATION,PART_NUMB
FROM "PUBLIC"."internal.sap.datamodel::ACTIVITY"
WHERE SUBSTRING(DATE_TIME,9,2) IN
我已经使用UTC时区创建了一个MySQL,并尝试将一个CakePHP实体保存到数据库中的datettime列中。
当PHP对象具有时区(与DatetTime不同)时,CakePHP在保存期间不会将值转换为UTC。
我写了一个简短的测试来演示这个问题。
public function testTryCreateReservation(): void
{
$e = $this->Reservations->newEmptyEntity();
$now = new \DateTime();
$start = new \DateTime('now',
使用下面的表定义: CREATE TABLE T1 (C1 TIMESTAMP DEFAULT NOW() ON UPDATE CURRENT_TIMESTAMP NOT
NULL); 当一行被更新时,C1被设置为当前的UTC时间戳。 这就是我想要的,但是我想知道这是否也是HSQLDB的预期行为,因为CURRENT_TIMESTAMP返回一个TIMESTAMP WITH TIME ZONE类型的值。
我想转换字符串到日期,一切都很好,但仍然,它给了我一个不正确的日期,根据字符串。
代码:
import UIKit
public class Utils {
public class func converServerTimeStampToDate (_ timeStamp: String) -> Date {
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "MM/dd/yyyy, hh:mm:ss a"
return dateF
我可以欣赏我的Postgres语法的第二双眼睛。
数据库在UTC中存储时间戳。我正在尝试从UTC转换为东部夏令时EDT,但是输出不准确。
下面是我的语法:
SELECT
to_char(((timestamp AT TIME ZONE 'UTC') AT TIME ZONE 'EDT'), 'MM/DD/YYYY HH24:MI')
FROM table_name
记录TimeStamp:
09/10/2016 12:00
查询输出:
09/10/2016 16:00
期望产出:
09/10/2016 08:00
谢谢你的帮助。