国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > SQL Server > 正文

mssql中獲取指定日期所在月份的第一天的代碼

2024-08-31 00:45:29
字體:
來源:轉載
供稿:網友
獲取指定日期月份的第一天,你可以使用DATEADD函數,減去指定日期的月份過去了的天數,即可。

復制代碼 代碼如下:


CREATE FUNCTION [dbo].[udf_FirstDayOfMonth]
(
@Date DATE
)
RETURNS DATETIME
AS
BEGIN
RETURN CAST(DATEADD(day,1 - DAY(@Date), @Date) AS DATETIME)
END


或者,用DATEDIFF計算指定日期與日期開始之時,相隔幾個月,然后再DATEADD加上這個相隔月份數,從零開始。

復制代碼 代碼如下:


CREATE FUNCTION [dbo].[udf_FirstDayOfMonth]
(
@Date DATE
)
RETURNS DATETIME
AS
BEGIN
RETURN DATEADD(MONTH,DATEDIFF(MONTH,0,@Date),0)
END


或者,從指定的日期取出年或月,然后與01組合為日期,即得到指定日期當月天第一天。

復制代碼 代碼如下:


CREATE FUNCTION [dbo].[udf_FirstDayOfMonth]
(
@Date DATE
)
RETURNS DATETIME
AS
BEGIN
DECLARE @y NVARCHAR(4) = CAST(YEAR(@Date) AS NVARCHAR(4))
DECLARE @m NVARCHAR(2) = CAST(MONTH(@Date) AS NVARCHAR(2))
RETURN CAST((@y + N'-' + @m + N'-01') AS DATETIME)
END


或者,參考這篇: 使用CONVERT函數,指定日期格式來轉換,這樣也可以獲取指定日期所在月份的第一天。

復制代碼 代碼如下:


CREATE FUNCTION [dbo].[udf_FirstDayOfMonth]
(
@Date DATE
)
RETURNS DATETIME
AS
BEGIN
DECLARE @ym NVARCHAR(10) = CONVERT(varchar(8),GETDATE(),23)
RETURN CAST((@ym + N'01') AS DATETIME)
END

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 永州市| 常熟市| 富顺县| 桂阳县| 桐庐县| 鲁甸县| 津南区| 灵武市| 喀喇| 汉阴县| 乃东县| 响水县| 襄樊市| 金湖县| 抚松县| 嘉峪关市| 阳朔县| 马鞍山市| 贺兰县| 林芝县| 张家界市| 个旧市| 怀来县| 交城县| 长治县| 洞头县| 历史| 临西县| 察隅县| 双江| 拉萨市| 江华| 清水县| 三江| 伊宁市| 丹凤县| 阿拉善盟| 曲松县| 曲阳县| 洱源县| 沂源县|