当前位置: 首页 > 知识库问答 >
问题:

SQL Server 2008 UTC转换为EST

翁烨霖
2023-03-14

我需要转换一个日期列,数据库中的日期正好偏离了5个小时。时间保持为UTC,当他们查看应用程序时,它会显示EST时区。应用程序自动转换时间。UTC比东部标准时间提前了5秒。以下代码似乎为大多数时间戳固定了时间和日期,但是,有没有办法设置和偏移?报告回顾一天,并应将转换后的UTC时间返回到EST时间。

SELECT DISTINCT 
    Encounters.EncounterNo, MedicalRecords.MedRecNo as MRN,
    DATEADD(DAY, -1, DATEADD(hh, DATEDIFF(hh, GETDATE(), GETUTCDATE()), Documents.CreateDateTime)) AS [Create Date],
    SUBSTRING(Enrollees.EnrolleeName, 1, CHARINDEX(',', Enrollees.EnrolleeName) - 1) as [Last Name],
    SUBSTRING(Enrollees.EnrolleeName, CHARINDEX(',', Enrollees.EnrolleeName) + 1, len(Enrollees.EnrolleeName)) as [First Name], 
    DocTypes.DocTypeName, 
    CAST(Enrollees.BirthDate AS Date) AS [BIRTH DATE], 
    Enrollees.Gender, Enrollees.SocSecNo, Enrollees.Address, 
    CAST(Encounters.EncntrStartDate AS Date) AS [ADMIT DATE]
FROM            
    Enrollees 
INNER JOIN
    MedicalRecords ON Enrollees.EnrolleeOwnerId = MedicalRecords.EnrolleeOwnerId 
INNER JOIN
    Documents 
INNER JOIN
    DocTypes ON Documents.DocType = DocTypes.DocType 
INNER JOIN
    DocsOwners ON Documents.DocId = DocsOwners.DocId 
INNER JOIN
    Encounters ON DocsOwners.OwnerId = Encounters.EncntrOwnerId 
    ON MedicalRecords.MedRecOwnerId = Encounters.MedRecOwnerId
WHERE
    Documents.DocType = '65' 
    AND (DATEDIFF(DD, GETUTCDATE(), Documents.CreateDateTime) = - 1)
ORDER BY 
    DocTypes.DocTypeName

共有1个答案

姚高爽
2023-03-14

一个简单的方法是创建一个计算列,然后让报表引用这个新列。这样,您可以保留原始数据,并通过数据库处理转换。

ALTER TABLE [Your Table Name] ADD
UTC2EST  AS dateadd(hh,-5,[Your current UTC datetime column])
 类似资料:
  • 问题内容: 我怎样才能投来? 问题答案: 您必须创建一个新的。

  • 问题内容: 我仍然是Java的初学者,所以我对线程和并发的了解还很少。但是,由于java.util.Timer和TimerTask存在问题,我希望能够将ScheduledThreadPoolExecutor用作计时器。我对线程的创建非常感兴趣,并且知道我将在几周内学习它们。但是,如果可以的话,有人可以给我一个基本的示例,说明如何使用util.timer将当前的迷你测试程序转换为ScheduledT

  • 更新:我已经尝试将getCalcMean()和calcMean;我理解这个错误的含义,但我不知道如何修复它,因为最终结果需要是double,我认为java可以计算double和int并得到double。我做错了什么? 我正在计算键入999后的总数平均值,但它一直显示为0,我不知道为什么。 有人能告诉我如何让我的getCalcMean()方法将平均值显示为numTotal/count吗? ---班级

  • 我想把下面的代码转换成Java8s。

  • 最近,我浏览了一些网站,将中缀转换成前缀符号,最后我被卷了起来。 我已经给出了我所做的步骤。。 例:-(1(2*3))(5*6)(7/8) 方法1:-(无需任何算法的手动转换):- 方法2:- 根据现场情况http://scanftree.com/Data_Structure/infix-to-prefix 所以,在这里我完全被绞死了。 请任何人提供以下方面的信息:- 关于我在以上2种方法中哪里出

  • 问题内容: 如何将String 列表转换为数组?以下代码返回错误。 错误: 问题答案: 你要 有关文档,请参见此处,请注意,您也可以以填充已传递数组的方式调用此方法,而不仅仅是使用它来计算要返回的类型。另请注意,也许当您打印阵列时,您更喜欢 因为那将打印实际的元素。

  • 我们正在获取具有以下字段的订单数据(仅显示相关字段) 具有NULLoriginal_orderid的订单可以被认为是父订单 其中一些父母订单可能有子订单,子订单的original_orderid映射到父母的订单。 子顺序可以产生另一个子顺序,如图像所示,带有颜色编码。 与原始文本相同的数据: 作为转换,我们需要将所有子节点映射到它们的原始父节点(original_orderid为NULL),并获得

  • 问题内容: 我正在开发一些应用程序,它允许从SD卡中选择图像,将其保存到数据库中并为ImageView设置此值。我需要知道将uri转换为字符串并将字符串转换为uri的方法。现在,我使用了Uri的getEncodedPath()方法,但是例如,此代码不起作用: 因此,我不知道如何将Uri保存到数据库中并根据保存的值创建新的Uri。请帮我修复它。 问题答案: 我需要知道将uri转换为字符串并将字符串转