亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在SQL Server 2005/2008中獲取星期幾

在SQL Server 2005/2008中獲取星期幾

青春有我 2019-12-11 09:09:40
如果我有一個日期01/01/2009,我想找出星期幾,例如星期一,星期二等。SQL Server 2005/2008中是否對此具有內置功能?還是我需要使用輔助表?
查看完整描述

3 回答

?
哆啦的時光機

TA貢獻1779條經驗 獲得超6個贊


使用DATENAME或DATEPART:


SELECT DATENAME(dw,GETDATE()) -- Friday

SELECT DATEPART(dw,GETDATE()) -- 6


查看完整回答
反對 回復 2019-12-12
?
絕地無雙

TA貢獻1946條經驗 獲得超4個贊

即使SQLMenace的答案已被接受,SET您也應該注意一個重要的選擇


設置日期


如果一周的第一天已更改,則DATENAME將返回正確的日期名稱,但返回的DATEPART值將不同,如下所示。


declare @DefaultDateFirst int

set @DefaultDateFirst = @@datefirst

--; 7 First day of week is "Sunday" by default

select  [@DefaultDateFirst] = @DefaultDateFirst 


set datefirst @DefaultDateFirst

select datename(dw,getdate()) -- Saturday

select datepart(dw,getdate()) -- 7


--; Set the first day of week to * TUESDAY * 

--; (some people start their week on Tuesdays...)

set datefirst 2

select datename(dw,getdate()) -- Saturday

--; Returns 5 because Saturday is the 5th day since Tuesday.

--; Tue 1, Wed 2, Th 3, Fri 4, Sat 5

select datepart(dw,getdate()) -- 5 <-- It's not 7!

set datefirst @DefaultDateFirst



查看完整回答
反對 回復 2019-12-12
?
幕布斯6054654

TA貢獻1876條經驗 獲得超7個贊

要獲得給定日期的星期幾的確定性值,可以結合使用DATEPART ()和@@ datefirst。否則,您將取決于服務器上的設置。


請訪問以下站點以獲得更好的解決方案:MS SQL:星期幾


這樣,星期幾將在0到6之間,其中0是星期日,1是星期一,依此類推。然后,您可以使用簡單的case語句返回正確的工作日名稱。



查看完整回答
反對 回復 2019-12-12
  • 3 回答
  • 0 關注
  • 524 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號