① 用sql語句可以做出判斷節假日等的嗎
明確不可以的,解決辦法:
建立一張表,來存儲每年節假日,業務處理的時候來讀取這張表再做比對
我就是這樣解決的。每年年底只用維護一次這張表即可
② sql server里怎麼判別datetime類型的值是否為公眾日
sql server 裡面有個datepart 函數,可以知道這一天是周幾,但是沒法判斷其他節假日,如果你要判斷其他節假日,只能自己做個日歷表
假設這列datetime的欄位名叫term
select datepart(weekday,term) from table
周日到周六分別是1,2,3,4,5,6,7
③ sql server 如何判斷節假日
有一張表存放當年的節假日
用的時候用日期與該表關聯,關聯上的就是節假日
④ sql中如何計算得到一段時間內指定日期中有多少個休息日和節假日
這個問題的前題是需要建立一個表(存放休息日和節假日) holidays,裡面存放了所有休息日等
SQL中提供了一些日期計算函數如dateadd,可對日期進行遞增操作。
基本代碼如下:
declare @startdate datetime='2015-9-10'
declare @enddate datetime='2015-10-10'
declare @days int=0
set @startdate=dateadd(day,@startdate,1) --給開始日期加1天
while(@startdate<@enddate) --如果小於結束日期,一直循環處理下面
begin
IF EXISTS (SELECT * FROM holidays WHERE holiday=@startdate) --如果假日表中找到對應日期,則假日數加1
set @days=@days+1
set @startdate=dateadd(day,@startdate,1) --給開始日期加1天
end
select @days --總天數。
⑤ 在SQL怎樣判斷日期是否是星期天
EXCEL中判斷一個日期是不是今天,用公式=today()可實現;
操作如下:
比如,A2單元格的日期是2016年12月7日,要判斷此日期是否今天日期,如下圖;
1;在其它空的單元格(比如,D2單元格)上輸入公式:=today()
2;然後,按回車鍵。得出今天日期;
3;A2單元格和D2單元格的日期一比較就知道A2單元格的日期是否是今天的日期了。
⑥ 在sql語句中如何判斷周六日
周六是
datepart(week,getdate())=6
周日是
datepart(week,getdate())=7
select case when datepart(week,getdate()) in (6,7) then '休息日' else '工作日' end
⑦ pl/sql 中節假日怎麼取
沒有辦法。
只有自己創建一個table,用來維護日歷。用欄位來區分法定假日,星期天。
或者,把特殊的日子維護進去。
⑧ sql 有沒有函數根據日期判斷是否為法定節假
自己建一個法定節假日表,根據該表進行判斷就可以了
想用函數的話,用法定節假日表自定義一個判斷是否節假日的函數
⑨ 判斷是工作日還是周末的SQL語句
方法一:
SELECT d.theDate,
DATEDIFF(DAY, '17530101', d.theDate) % 7 / 5 AS IsWeekend,
1 - DATEDIFF(DAY, '17530101', d.theDate) % 7 / 5 AS IsWeekday
FROM (
SELECT CAST('20081124' AS SMALLDATETIME) AS theDate UNION ALL
SELECT '20081125' UNION ALL
SELECT '20081126' UNION ALL
SELECT '20081127' UNION ALL
SELECT '20081128' UNION ALL
SELECT '20081129' UNION ALL
SELECT '20081130'
) AS d
方法二:
SELECT d.theDate,
CASE WHEN DATEPART(weekday,thedate+@@DATEFIRST -1)<6 THEN 1 ELSE 0 END,
CASE WHEN DATEPART(weekday,thedate+@@DATEFIRST -1)>=6 THEN 1 ELSE 0 END
FROM (
SELECT CAST('20081124' AS SMALLDATETIME) AS theDate UNION ALL
SELECT '20081125' UNION ALL
SELECT '20081126' UNION ALL
SELECT '20081127' UNION ALL
SELECT '20081128' UNION ALL
SELECT '20081129' UNION ALL
SELECT '20081130'
) AS d
⑩ sql+server中怎麼判斷時間為周六日
where datename(weekday,時間欄位)='星期六'