SQL中怎么判断给定日期值

54次阅读
没有评论

共计 1831 个字符,预计需要花费 5 分钟才能阅读完成。

今天就跟大家聊聊有关 SQL 中怎么判断给定日期值,可能很多人都不太了解,为了让大家更加了解,丸趣 TV 小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

一、给定一个日期值,求出此日期所在星期的星期一和星期天的日期数据 例如给定一个日期 2010-09-01,求出它所在星期的星期一是 2010-08-30,星期天是 2010-09-05 Function 创建如下: 复制代码 代码如下:
USE [MSSQL] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE FUNCTION [dbo].[My_OneDay_GetWeekFirstAndEndDay](@tmpDate DATETIME) RETURNS @tmpTable TABLE(FirstDay DATETIME , EndDay DATETIME) AS BEGIN INSERT INTO @tmpTable SELECT a.FirstDay,b.EndDay FROM (SELECT 1 AS ID,DATEADD(wk, DATEDIFF(wk,0,@tmpDate), 0) AS FirstDAy ) a LEFT JOIN (SELECT 1 AS ID,DATEADD(wk, DATEDIFF(wk,0,@tmpDate), 6) AS EndDay ) b ON a.ID = b.ID RETURN End

Function 测试: 复制代码 代码如下:
SELECT * from My_OneDay_GetWeekFirstAndEndDay(2010-09-01)

二、以上面单个日期搜索为基础,由用户输入两个参数,一个是开始日期,一个结束日期,根据这两个参数,求出在此时期段内的所有星期的星期一和星期天的日期表并排序。例如开始日期是 2011-09-01, 结束日期是 2011-10-06,我们就可以得到此星期表如下: WeekOrder FirstDay EndDay 1 2011-08-29 00:00:00.000 2011-09-04 00:00:00.000 2 2011-09-05 00:00:00.000 2011-09-11 00:00:00.000 3 2011-09-12 00:00:00.000 2011-09-18 00:00:00.000 4 2011-09-19 00:00:00.000 2011-09-25 00:00:00.000 5 2011-09-26 00:00:00.000 2011-10-02 00:00:00.000 6 2011-10-03 00:00:00.000 2011-10-09 00:00:00.000 Function 创建如下: 复制代码 代码如下:
USE [MSSQL] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE FUNCTION [dbo].[MY_Range_GetWeekFirstAndEndDays](@tmpDateSTART DATETIME,@tmpDateEND DATETIME) RETURNS @tmpTable TABLE(WeekOrder INT,FirstDay DATETIME , EndDay DATETIME) AS BEGIN DECLARE @tmpDate DATETIME DECLARE @index INT SET @tmpDate=@tmpDateSTART SET @index=1 WHILE @tmpDate =@tmpDateEND BEGIN INSERT INTO @tmpTable SELECT @index,a.FirstDay,b.EndDay FROM (SELECT 1 AS ID,DATEADD(wk, DATEDIFF(wk,0,@tmpDate), 0) AS FirstDAy) a LEFT JOIN (SELECT 1 AS ID,DATEADD(wk, DATEDIFF(wk,0,@tmpDate), 6) AS EndDay) b ON a.ID = b.ID SET @tmpDate=DATEADD(DAY,7,@tmpDate) SET @index=@index+1 END RETURN End

Function 测试: 复制代码 代码如下:
SELECT * from My_Range_GetWeekFirstAndEndDays(2011-09-01 , 2011-10-06)

看完上述内容,你们对 SQL 中怎么判断给定日期值有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注丸趣 TV 行业资讯频道,感谢大家的支持。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-04发表,共计1831字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)