SQL Server 如何跨时区持久化和使用时间

2023-12-03

在 SQL Server 中,我想创建一个表来保存事件的时间,并希望将其转换为用户选择的时区以供显示。假设,如果格林威治标准时间下午 1:00 在伦敦发生一件事,那么美国东部时间就是上午 8:00。

鉴于这个例子我想创建一个框架,

  1. 用户可以保存事件和时间(给出事件的时区)

  2. 阅读这些事件,时间显示在他喜欢的时区(美国东部时间)

我如何在 SQL Server 中完成此操作。


在 SQL Server 2008 中,使用日期时间偏移量数据类型是 DATETIME 加上时区偏移量。

SELECT CAST('2010-11-23 16:35:29+09:00' AS datetimeoffset) 

将为 2010 年 11 月 23 日下午 4:35(格林尼治标准时间 +9 小时)。

SQL Server 2008还包含函数和SQL命令来转换DATETIMEOFFSET从一个时区到另一个时区的值:

SELECT 
SWITCHOFFSET(CAST('2010-11-23 16:35:29+09:00' AS datetimeoffset), '+01:00')

会导致:

2010-11-23 08:35:29.0000000 +01:00

相同时间,不同时区(比 GMT 晚 1 小时)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SQL Server 如何跨时区持久化和使用时间 的相关文章

随机推荐

  • 使用 A* 的启发式方法来查找增益最高的路径

    假设我想改变 A 中的逻辑 试图找到最有用的路径 即增益最高的路径 而不是找到最短路径 即成本最低的路径 就我而言 目标并不固定为唯一的结束节点 节点定义为具有距离的任何节点B从起点开始 在普通版本 找到最短路径 中 我需要不要高估成本 即
  • PowerShell FTPS 上传失败并显示“系统错误”。

    问题 客户要求我们将从系统中提取的数据上传到他们的 box com 平台 而不是我们普通的 SFTP 实用程序 我有 box com 凭据 并且知道他们需要 FTPS 而不是 SFTP 并且需要被动模式 我抄袭了一个片段ThomasMaur
  • Groovy 中的测试类在 Kotlin 中看不到测试类

    我有一个带有 Kotlin 插件的 gradle 项目 在我的项目中 我使用 groovy 和 Spock 进行测试 用 Kotlin 编写的测试中使用的实用程序类之一 我将其放入 src test kotlin 我试图使用 groovy
  • 对 solr 输入字段进行哈希处理

    我想方便地搜索我们无法以非散列或加密形式索引或存储的字段 有没有办法告诉 solr 在与索引进行比较之前对特定字段进行哈希 或加密 简而言之 我认为这并不容易 这取决于您需要什么级别的安全性 作为一种通用 简单的解决方案 您可以将整个索引存
  • 在 ASP.NET MVC RC1 中对强类型视图使用“添加视图”对话框时出现问题

    我喜欢随 RC1 发布的新 添加视图 对话框 如果您指定视图数据类 它会为您生成一个支架视图 它似乎与我的解决方案中的项目中定义的类配合得很好 我的一些域类继承自外部程序集中定义的基类 并在我的 Web 项目中引用 当我指定这些域类之一时
  • 使用 MS 批处理文件将程序的输出分配给变量

    我需要使用 MS 批处理文件将程序的输出分配给变量 所以在 GNU Bash shell 中我会使用VAR application arg0 arg1 我需要在 Windows 中使用批处理文件实现类似的行为 就像是set VAR appl
  • 使页眉和页脚文件包含在多个 html 页面中

    我想创建包含在多个 html 页面上的通用页眉和页脚页面 我想使用 JavaScript 有没有办法只使用 html 和 JavaScript 来做到这一点 我想在另一个 html 页面中加载页眉和页脚页面 你可以通过以下方式完成此操作jq
  • 使用按钮打开包含库存商品详细信息的页面

    我的目的是在索引页面上显示带有链接的产品 单击链接时 将打开一个 模态 页面 显示该产品的详细信息 我有一个链接到产品页面的按钮 但没有链接到索引页面上的其他项目 如何使用此链接打开每个产品页面 按钮的代码
  • Datetime - 确定 R 中多个(n)日期时间范围是否相互重叠

    嗨 朋友们 我在查找多个日期时间范围是否相互重叠以及如果是的话 则查找它们重叠的时间段时遇到问题 我参考了以下链接确定两个日期范围是否重叠 and 检测重叠周期的算法还有更多 不知道这是否正确 我有 n 3 的示例解释 假设我有 n 个开关
  • 如何在TabActivity的单个选项卡下管理多个Activity

    问题就在这里 在我的应用程序中 我有 5 个包含活动的选项卡 在每个场景中 我都必须显示不同的屏幕 例如 选项卡的主要活动是列表视图 当我单击其中一个项目时 我想显示带有另一个列表视图的第二个屏幕 当用户选择一个项目等时 该屏幕将显示另一个
  • 找不到 -lFolly 的库

    将react native从版本0 63 2更新到0 66 1后 当我尝试构建我的应用程序时 我在Xcode中收到以下错误 找不到 lFolly 的库 我尝试过跑步pod install并清理构建文件夹 我的图书馆搜索路径看起来像this用
  • SetPixel 之后的 GetPixel 给出不正确的结果

    我从一张 jpg 中设置像素 另存为 jpg 文件 再次读取新文件 获取像素 但它给了我不正确的结果 这是我的代码 use Image Magick use Data Dumper my im new Image Magick im gt
  • 当我有来自 Code::Blocks 中同一组源文件的两个 .cpp 文件时,如何运行其中一个?

    我有两个不同的 cpp一个项目的同一组源下的文件 链表 我尝试运行一个名为 customer 的链接列表文件 但它只运行另一个名为 video 的文件 如何运行 客户 链表文件 My customer cpp文件处于活动状态 但仍在运行 视
  • Java 线程到 Linux 线程 (LWP) 的一对一映射

    Java之间是否存在一对一的映射关系Thread对象和操作系统线程 轻量级进程 也就是说 如果我有一个Thread对象 我是否可以始终准确地识别一个关联的操作系统线程 并且我将始终拥有相同的关联操作系统线程吗 一般来说 这取决于操作系统和
  • Elasticsearch 无法在 AWS kubernetes 集群上启动

    我正在运行 kubernetes 1 10 的 AWS EKS 上运行我的 kubernetes 集群 我正在按照本指南在我的集群中部署elasticsearch弹性搜索 Kubernetes 我第一次部署它时一切正常 现在 当我重新部署时
  • 我怎样才能“显式地”快速实现一个协议?如果不可能,为什么?

    在C 中 有这个伟大的语言功能称为 显式接口实现 它允许您实现两个或多个接口方法名称冲突的接口 它还可以使方法在使用封闭类型的对象调用它时执行一件事 并在将其转换为接口类型然后调用该方法时执行另一件事 我想知道 Swift 中是否有这样的东
  • 代理的 TFS 构建持续时间报告

    我正在尝试构建一份报告来显示各种构建代理的相对效率 但无法从该工具中获取我需要的信息 我想要的是一个包含以下列的简单网格 内部版本号 构建定义 构建代理 构建状态 构建开始时间 构建持续时间 这可以让我做一些类似的事情 比如根据agent2
  • 如何在 Unity3D 中进行触摸操作?

    我正在使用 Unity3D 制作一个 Android 应用程序 它已经可以使用点击检测 但不能使用触摸 但我需要触摸才能进行多点触控检测 我想要什么 我有我的播放器和 2 个箭头图像 一个箭头指向右侧 一个箭头指向左侧 当我触摸左箭头时 玩
  • 茉莉花位置重新加载

    我真的不知道如何进行测试 暗中监视 function reloadPage logo click function location reload 任何建议都会很棒 您可能不确定如何测试这段代码的原因是因为它正在做两件不同的事情 您应该将其
  • SQL Server 如何跨时区持久化和使用时间

    在 SQL Server 中 我想创建一个表来保存事件的时间 并希望将其转换为用户选择的时区以供显示 假设 如果格林威治标准时间下午 1 00 在伦敦发生一件事 那么美国东部时间就是上午 8 00 鉴于这个例子我想创建一个框架 用户可以保存