首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >查询日期时间声明

查询日期时间声明
EN

Stack Overflow用户
提问于 2019-02-03 03:45:32
回答 1查看 64关注 0票数 0

在存储过程中添加声明时,我遇到了表中的Datetime列的问题。

我希望将@EventTime设置为一周中的某一天,而不修改列。

更像是一个捕获物。

例如:

代码语言:javascript
复制
declare @EventTime datetime

set @EventTime = (select EventTime 
                  from _LogClients 
                  where ClientID = @ClientID)

if (@EventTime like '%2-2%) -- As a day of a week not as a numerical date.

日期时间预览:2019-01-22 17:47:00

关于这件事有什么帮助吗?注意: EventTime用于存储过程,该存储过程在发生特定事件时运行。然而,数据库是游戏一,所以记录器是基于服务器文件的,我需要知道我是否能够使EventTime声明能够读取列中的日期时间作为工作日,以便执行某一天的特定查询(虽然不是基于SQL Agent。这是一个不同的故事)。

EN

回答 1

Stack Overflow用户

发布于 2019-02-03 07:30:54

从你的问题中,我不能确定你是否正在尝试获得一周中实际一天的数字表示(比如周日是"1",星期一是"2",等等。)或者,如果您只需要日期中的星期几作为单词。

下面是修改后的代码,以便使用星期几(请注意,您可以在select语句中使用nchar,但随后需要将@EventTime的类型更改为nVarchar()或DateName ):

代码语言:javascript
复制
declare @EventTime datetime

set @EventTime = (select EventTime 
              from _LogClients 
              where ClientID = @ClientID)

if (DATENAME(dw,@EventTime) like '%Tuesday%)

如果你想用数字等价的用法:

代码语言:javascript
复制
if (DATEPART(dw,@EventTime) = '1' -- Testing for Sunday day name
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54496874

复制
相关文章

相似问题

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