現在の年の当月の 1 日から現在の日付までの日数を取得しようとしています。では、このスクリプトの何が問題なのですか? そして正しいものは?
select DATEDIFF(day,CONVERT(varchar,1+'/'+ MONTH(GETDATE())+'/' + YEAR(GETDATE()),102),GETDATE());
現在の年の当月の 1 日から現在の日付までの日数を取得しようとしています。では、このスクリプトの何が問題なのですか? そして正しいものは?
select DATEDIFF(day,CONVERT(varchar,1+'/'+ MONTH(GETDATE())+'/' + YEAR(GETDATE()),102),GETDATE());
月の 1 日からの日数は常に???に等しいDAY(YourDate)
か、可能性としてありませんか?DAY(YourDate) - 1
3 月 22 日、その数は 22 (または 21 - 数え方によって異なります) - いいえ???
では、これはどうですか:
SELECT
DaysFromFirstOfMonth = DAY(GETDATE()) - 1
それはあなたが探しているものですか??
スタイルの値が間違っているようです。102 は ansi-dates (yy.mm.dd) 用です。英国/フランスの日付 (dd/mm/yy) を使用する場合は、値 103 を使用する必要があります。
select DATEDIFF(day,CONVERT(varchar,1+'/'+ MONTH(GETDATE())+'/' + YEAR(GETDATE()),103),GETDATE());