首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Server中的两个WeekDay名称字段之间获取WeekDay名称

如何在Server中的两个WeekDay名称字段之间获取WeekDay名称
EN

Stack Overflow用户
提问于 2015-09-09 06:23:44
回答 2查看 68关注 0票数 0

我有两篇带有工作日名称的专栏,我的问题是如何在这两个工作日名称之间获得所有工作日名称。

例如:

代码语言:javascript
复制
 WeekStartDate      WeekEndDate  
   monday             friday

我想要这样的结果

代码语言:javascript
复制
Monday, Tuesday, Wednesday, Thursday, Friday

请帮帮我

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-09-09 06:43:33

您能不能在Where子句中使用中间操作符,并在中间添加一个INT列,这样就不能在nvarchar上工作。

代码语言:javascript
复制
            Create table #temp(
            data int,
            dayN Nvarchar(100)
            ,dayc int
            )
            SELECT * FROM #TEMP
            Insert into #temp values (10,'Monday',2)
            Insert into #temp values (20,'tuesday',3)
            Insert into #temp values (30,'wednesday',4)
            Insert into #temp values (40,'thursday',5)
            Insert into #temp values (50,'friday',6)

            SELECT Data
            FROM #TEMP
            where dayN between 'Monday' and 'Wednesday'
            --Above query gives wrong result

            SELECT Data
            FROM #TEMP
            where dayC between 3 and 6
票数 0
EN

Stack Overflow用户

发布于 2015-09-09 07:04:05

您可以这样做:

代码语言:javascript
复制
declare @tbl table (WeekStartDate  nvarchar(60),WeekEndDate    nvarchar(60) )
insert into @tbl values ('Monday', 'Friday')

declare @weeknums table (name nvarchar(60), num int)
insert into @weeknums values 
 ('Monday'    , 1 ),
 ('Tuesday'   , 2 ),
 ('Wednesday' , 3 ),
 ('Thursday'  , 4 ),
 ('Friday'    , 5 ),
 ('Saturday'  , 6 ),
 ('Sunday'    , 7 )

declare @min nvarchar(max) = (select min(num) 
                              from @tbl t
                              join @weeknums w on t.WeekStartDate = w.name or t.WeekEndDate = w.name)

declare @max nvarchar(max) = (select max(num) 
                              from @tbl t
                              join @weeknums w on t.WeekStartDate = w.name or t.WeekEndDate = w.name)

select w.* 
from @weeknums w
where w.num between @min and @max
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32472260

复制
相关文章

相似问题

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