av激情亚洲男人的天堂国语,日韩欧美精品一中文字幕,无码av一区二区三区无码,国产又色又爽又刺激的a片,国产又色又爽又刺激的a片

判斷給定時(shí)間段所在的星期一和星期天的日期

最近報(bào)表要用到一項(xiàng)功能,需要把數(shù)據(jù)源根據(jù)記錄發(fā)生日期所在的星期序列進(jìn)行分組。因此就寫了兩個(gè)相關(guān)SQL Function進(jìn)行調(diào)用。

專注于為中小企業(yè)提供網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站制作服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)豐都免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了1000+企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

一、給定一個(gè)日期值,求出此日期所在星期的星期一和星期天的日期數(shù)據(jù)

例如給定一個(gè)日期 2010-09-01,求出它所在星期的星期一是2010-08-30,星期天是2010-09-05

 Function創(chuàng)建如下:

 
 
 
  1. USE [MSSQL] 
  2. GO 
  3. SET ANSI_NULLS ON 
  4. GO 
  5. SET QUOTED_IDENTIFIER ON 
  6. GO 
  7. CREATE FUNCTION [dbo].[My_OneDay_GetWeekFirstAndEndDay](@tmpDate DATETIME) 
  8. RETURNS  @tmpTable TABLE(FirstDay DATETIME , EndDay DATETIME) 
  9. AS 
  10. BEGIN 
  11.     INSERT INTO @tmpTable 
  12.     SELECT a.FirstDay,b.EndDay FROM (     
  13.         SELECT 1 AS ID,DATEADD(wk, DATEDIFF(wk,0,@tmpDate), 0) AS FirstDAy 
  14.     ) a 
  15.     LEFT JOIN ( 
  16.         SELECT 1 AS ID,DATEADD(wk, DATEDIFF(wk,0,@tmpDate), 6) AS EndDay 
  17.     ) b 
  18.     ON a.ID = b.ID 
  19.     RETURN 
  20. END 

Function測(cè)試:

 
 
 
  1. SELECT * from  My_OneDay_GetWeekFirstAndEndDay('2010-09-01') 

二、以上面單個(gè)日期搜索為基礎(chǔ),由用戶輸入兩個(gè)參數(shù),一個(gè)是開始日期,一個(gè)結(jié)束日期,根據(jù)這兩個(gè)參數(shù),求出在此時(shí)期段內(nèi)的所有星期的星期一和星期天的日期表并排序。

例如開始日期是2011-09-01,結(jié)束日期是2011-10-06,我們就可以得到此星期表如下:

 
 
 
  1. WeekOrder              FirstDay                                EndDay 
  2.  1               2011-08-29 00:00:00.000  2011-09-04 00:00:00.000 
  3.  2               2011-09-05 00:00:00.000  2011-09-11 00:00:00.000 
  4.  3               2011-09-12 00:00:00.000  2011-09-18 00:00:00.000 
  5.  4               2011-09-19 00:00:00.000  2011-09-25 00:00:00.000 
  6.  5               2011-09-26 00:00:00.000  2011-10-02 00:00:00.000 
  7.  6               2011-10-03 00:00:00.000  2011-10-09 00:00:00.000 

Function創(chuàng)建如下:

 
 
 
  1. USE [MSSQL] 
  2. GO 
  3. SET ANSI_NULLS ON 
  4. GO 
  5. SET QUOTED_IDENTIFIER ON 
  6. GO 
  7. CREATE FUNCTION [dbo].[MY_Range_GetWeekFirstAndEndDays](@tmpDateSTART DATETIME,@tmpDateEND DATETIME) 
  8. RETURNS  @tmpTable TABLE(WeekOrder INT,FirstDay DATETIME , EndDay DATETIME) 
  9. AS 
  10. BEGIN    
  11.  DECLARE   @tmpDate   DATETIME 
  12.  DECLARE   @index         INT 
  13.  SET       @tmpDate=@tmpDateSTART 
  14.  SET       @index=1 
  15.      WHILE     @tmpDate <=@tmpDateEND 
  16.         BEGIN  
  17.              INSERT INTO @tmpTable 
  18.                 SELECT @index,a.FirstDay,b.EndDay FROM (     
  19.                     SELECT 1 AS ID,DATEADD(wk, DATEDIFF(wk,0,@tmpDate), 0) AS FirstDAy) a 
  20.                 LEFT JOIN ( 
  21.                     SELECT 1 AS ID,DATEADD(wk, DATEDIFF(wk,0,@tmpDate), 6) AS EndDay) b 
  22.                 ON a.ID = b.ID 
  23.  
  24.           SET   @tmpDate=DATEADD(DAY,7,@tmpDate) 
  25.           SET   @index=@index+1 
  26.          END  
  27.      RETURN 
  28. END 

Function測(cè)試:

 
 
 
  1. SELECT * from  My_Range_GetWeekFirstAndEndDays('2011-09-01','2011-10-06') 

當(dāng)前文章:判斷給定時(shí)間段所在的星期一和星期天的日期
網(wǎng)站鏈接:http://uogjgqi.cn/article/djcpode.html
掃二維碼與項(xiàng)目經(jīng)理溝通

我們?cè)谖⑿派?4小時(shí)期待你的聲音

解答本文疑問/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流