查看完整版本: SQL Server 日曆製作
頁: [1]

chieh-zz 發表於 2014-10-15 02:37 PM

SQL Server 日曆製作

本帖最後由 chieh-zz 於 2014-10-20 08:27 AM 編輯

SQL Server  日曆製作~

DECLARE @Date DATETIME  
Set @Date = GetDate()  
DECLARE @Start DATETIME,@End DATETIME  
DECLARE @Index INT  
SET @Start = DATEADD(MONTH,DATEDIFF(MONTH,0,@Date),0)  
SET @End = DATEADD(MONTH,1,@Start)  
SET @Index = DATEDIFF(DAY,-1,@Start)%7 - 1;  
SET @Start = DATEADD(mm,DATEDIFF(mm,0,@Date),0)   
SET    @End = DATEADD(mm,1,@Start) - 1  
SET    @Index= DATEDIFF(day,0,@Start)%7  
;WITH temp(date,row,col) AS  
(  
     SELECT date=1,row=@Index/7+1,col=@Index%7+1  
     UNION ALL  
     SELECT date=date+1,row=(@Index+date)/7+1,col=(@Index+date)%7+1  
     FROM temp   
     WHERE date <= DATEDIFF(DAY,@Start,@End)  
)  

SELECT  ISNULL(CONVERT(CHAR(2),),'') AS 一,  
         ISNULL(CONVERT(CHAR(2),),'') AS 二,  
         ISNULL(CONVERT(CHAR(2),),'') AS 三,  
         ISNULL(CONVERT(CHAR(2),),'') AS 四,  
         ISNULL(CONVERT(CHAR(2),),'') AS 五,  
         ISNULL(CONVERT(CHAR(2),),'') AS 六,  
         ISNULL(CONVERT(CHAR(2),),'') AS 日  
FROM temp  
PIVOT  
(      
     MAX(date) FOR col IN (,,,,,,)  
) AS B


...<div class='locked'><em>瀏覽完整內容,請先 <a href='member.php?mod=register'>註冊</a> 或 <a href='javascript:;' onclick="lsSubmit()">登入會員</a></em></div><div></div>
頁: [1]