當前位置:首頁 » 編程語言 » sql當月的第一天

sql當月的第一天

發布時間: 2024-08-20 10:00:45

『壹』 如何將sql中的日期欄位的值改成當月的第一天呀

這樣:
update 表
set 日期欄位=dateadd(dd,-day(日期欄位)+1,日期欄位)

原理是,原日期減去原日期在當月所處的天數然後再加一天就是原日期當月1日的日期。

『貳』 sql如何取某年某月的第一天和最後一天

SELECT CAST((LEFT('20093',4)+'-'+SUBSTRING('20093',5,LEN('20093'))+'-'+'01') AS DATETIME)--第一天

SELECT DATEADD(DAY,-1,DATEADD(MONTH,1,CAST((LEFT('20093',4)+'-'+SUBSTRING('20093',5,LEN('20093'))+'-'+'01') AS DATETIME)))--最後一天

原理:第一天肯定是1號拉,最後一天是下個月第一天減一天。

本月第一天

SELECT dateadd(ms,-1,DATEADD(mm, DATEDIFF(m,0,getdate()), 0)) as mouthlastdate

下月第一天:

SELECT dateadd(ms,-1,DATEADD(mm, DATEDIFF(m,0,getdate())+1, 0)) as mouthlastdate

下下月第一天:

SELECT dateadd(ms,-1,DATEADD(mm, DATEDIFF(m,0,getdate())+2, 0)) as mouthlastdate

(2)sql當月的第一天擴展閱讀

sqlserver 時間格式函數詳細

--getdate 獲取當前時間

select getdate()

--dateadd 原有時間加: 2013-02-17 13:20:16 此時間加12個月

select dateadd(MONTH,12,'2013-02-17 13:20:16') --返回:2014-02-17 13:20:16.000 (參數month可以改為 day,year等日期加相應的值)

--datediff 兩個時間的差 (後面-前面=返回值)

select datediff(day,'2013-02-01','2013-02-18') --返回:17 (參數day可以改為 month,year等日期加相應的值)

--datepart 獲取日期的某個部分整數

select DATEPART(month, '2013-2-17') --返回 2 (參數month可以改為 day,year等日期加相應的值)

--datename 獲取指定部位的字元串

select datename(weekday, '2013-2-17') --返回 星期日 (參數weekday可以改為 day,year等日期加相應的值)

--day(), month(),year() 獲取指定部位的字元串

select day('2013-2-15') --返回15

『叄』 sql server 怎麼查詢當月第一天和最後一天,下月第一天與下月最後一天

selectcast(dateadd(day,-day(getdate())+1,getdate())asdate)當月第一天,
cast(dateadd(day,-1,datename(year,dateadd(month,1,getdate()))+datename(month,dateadd(month,1,getdate()))+'01')asdate)當月最後一天,
cast(datename(year,dateadd(month,1,getdate()))+datename(month,dateadd(month,1,getdate()))+'01'asdate)下月第一天,
cast(dateadd(day,-1,datename(year,dateadd(month,2,getdate()))+datename(month,dateadd(month,2,getdate()))+'01')asdate)下月最後一天

『肆』 使用SQL語句取相關日期(當月天數,當月第一天,當月最後一天,本年最後一天,當月第一個星期)

--當月天數
select day(dateadd(ms,-3,DATEADD(m, DATEDIFF(m,0,getdate())+1,0)))
---當月第一天
select dateadd(d,-day(getdate())+1,getdate())
---當月最後一天
select dateadd(d,-day(getdate()),dateadd(m,1,getdate()))
--本年最後一天
select dateadd(d,-day(getdate()),dateadd(m,12,getdate()))
--當月第一個星期一
SELECT DATEADD(wk, DATEDIFF(wk, '', DATEADD(dd, 6 - DAY(getdate()), getdate())), '')

『伍』 sql 獲取當前月的第一天

DATEDIFF(mm,0,getdate())用來計算出「0」和當前日期所相差的月份數,比如說相差10個月。
DATEADD (mm,x,0)
在0日期的基礎上,加上x個月。
那麼就相當於把去掉了日期,只留下了月份,也就是當前月份了。沒有日期,也就是第一天的0點了。

『陸』 sql 配置變數為當月第一天日期

可以利用sql函數實現,首先獲取傳遞過來的日期中的天數,然後減去(天數-1),即可得到第一天日期。
例如mysql:DATE_SUB($[yyyy-mm-dd], INTERVAL (DAY($[yyyy-mm-dd]) -1) DAY)
大體思路是這樣的,不同的資料庫sql日期函數略有不同,自己調試下吧。

熱點內容
訪問內網計算機 發布:2024-11-25 12:37:53 瀏覽:968
蘋果文件夾名字大全 發布:2024-11-25 12:28:03 瀏覽:589
ipad上b站緩存分屏 發布:2024-11-25 12:27:59 瀏覽:980
資料庫日誌文件查看 發布:2024-11-25 12:17:28 瀏覽:47
騰訊視頻明明緩存了看不了 發布:2024-11-25 12:08:01 瀏覽:181
存儲區域網路分布 發布:2024-11-25 12:07:12 瀏覽:388
安卓怎麼用湯不熱 發布:2024-11-25 11:49:06 瀏覽:843
java線程調用 發布:2024-11-25 11:42:45 瀏覽:844
識地圖演算法 發布:2024-11-25 11:31:10 瀏覽:20
楊輝三角c語言程序一維數組 發布:2024-11-25 11:30:30 瀏覽:214