首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL数据更新查询

SQL数据更新查询
EN

Stack Overflow用户
提问于 2013-04-25 14:06:19
回答 1查看 155关注 0票数 1

我有一个SQL数据表,其日期以日期格式存储在yyyy-mm-dd列中。我已经用bigint创建了一个新列,并且想要编写一个查询来将日期转换为bigint并更新我的新列。我尝试使用CAST,但收到一条消息,我不能显式地将date转换为bigint。有没有人能帮我弄个SQL公式把date (yyyy-mm-dd)转换成bigint

EN

回答 1

Stack Overflow用户

发布于 2013-04-25 14:10:04

我不确定您使用的是哪种品牌的SQL server,但在Microsoft SQL Server上,您可以使用convert函数来实现这一点。

(编辑)根据注释中的信息添加了一个示例。我仍然假设您使用的是SQL server:

如果您的表有一个名为'IssueDate‘的datetime列和一个名为IssueDateOAD的新bigint列,则可以运行以下查询:

update mytable set IssueDateOAD = convert(bigint, IssueDate) + 2

如果IssueDate是包含日期格式字符串的varchar列,则必须先将其转换为日期。对于yyyy-mm-dd,您可以使用convert(datetime, IssueDate, 126) (有关您可以传递到convert的样式代码,请参阅文档,126表示我们正在传递ISO8601格式的日期)

包含从varchar到datetime的转换的查询为:

update mytable set IssueDateOAD = convert(bigint, convert(datetime, IssueDate, 126)) + 2

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16207530

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档