programing

현재 날짜에 일을 추가하는 방법은 무엇입니까?

minimums 2023. 8. 16. 22:07
반응형

현재 날짜에 일을 추가하는 방법은 무엇입니까?

현재 날짜에 일을 추가하려고 하는데 정상적으로 작동하지만 360일을 현재 날짜에 추가하면 잘못된 값이 표시됩니다.

예: 현재 날짜는 2014년 11월 4일입니다.

그리고 360일을 추가합니다. 2015년 11월 4일이 주어져야 하는데, 2014년 11월 4일과 같은 날짜가 표시됩니다. 연도는 변경되지 않습니다.

내 코드는 다음과 같습니다.

select dateadd(dd,360,getdate())

그냥...

Select (Getdate()+360) As MyDate

지정된 날짜에서 일을 더하거나 빼는 데 date add 기능을 사용할 필요가 없습니다.년, 월, 시간을 추가하려면 날짜 추가 기능이 필요합니다.

select dateadd(dd,360,getdate())다음과 같이 정확한 날짜가 제공됩니다.

2017-09-30 15:40:37.260

방금 쿼리를 실행하고 확인했습니다.
Please check the attached image

Dateadd(datepart,number,date)

다음과 같이 사용해야 합니다.

select DATEADD(day,360,getdate())

그러면 당신은 같은 날짜이지만 다른 해를 찾을 수 있을 것입니다.

SQL Server 2017 공식 문서에서 확인할 수 있는 내용:

SELECT DATEADD(day, 360, GETDATE());

시간 부분을 제거하려는 경우GETDATE기능, 당신은 할 수 있습니다:

SELECT DATEADD(day, 360, CAST(GETDATE() AS DATE));

SQL Server 2008 이상에서는 다음을 수행합니다.

SELECT DATEADD(day, 1, Getdate()) AS DateAdd;

이것을 시도할 수 있습니다.

select (CONVERT(VARCHAR(10),GETDATE()+360,110)) as Date_Result

두 가지 또는 세 가지 방법(원하는 내용에 따라 다름), 현재 날짜(itsql 코드)에 있다고 가정합니다.

DECLARE @myCurrentDate datetime = '11Apr2014 10:02:25 AM'

(BTW - 원래 게시물에서 2014년 4월 11일 또는 2014년 11월 4일을 의미했습니까?데이트 시간이 문화적으로 편향되어 있기 때문에 구분하기 어렵습니다.이스라엘에서 2015년 11월 4일은 2014년 4월 11일을 의미합니다.저는 미국에서 2014년 11월 4일을 의미하는 것으로 알고 있습니다. 토마토 토마토 토마토)

  1. SELECT @myCurrentDate + 360기본적으로 날짜/시간 계산 뒤에 +(일부 정수)를 추가합니다. 일 단위로 추가하면 됩니다.그래서 당신은 얻을 것입니다.2015-04-06 10:02:25.000정확히 당신이 원했던 것이 아니라, 오히려 내년에 가까운 데이트를 위한 볼 파크 피규어입니다.

  2. SELECT DateADD(DAY, 365, @myCurrentDate)또는DateADD(dd, 365, @myCurrentDate)'2015-04-11 10:02:25.000'을 제공합니다.이 두 가지는 합성 당입니다(정확히 동일합니다).이게 당신이 원했던 거라고 생각해요.하지만 그것은 여전히 틀립니다, 왜냐하면 만약 날짜가 "4분의 3"년이었다면 (말씀하세요.DECLARE @myCurrentDate datetime = '11Apr2011 10:02:25 AM') 2012년은 366일이었기 때문에 '2012-04-10 10:02:25.000'을 받게 될 것입니다. 기억하십니까?(2012년 2월 29일은 "추가"일을 소비합니다.거의 4년마다 2월 29일이 있습니다.

  3. 그래서 제 생각에 당신이 말한 것 같습니다.

    SELECT DateADD(year, 1, @myCurrentDate)
    

    이는2015-04-11 10:02:25.000.

  4. 아니면 더 나은.

    SELECT DateADD(year, 1, DateADD(day, DateDiff(day, 0, @myCurrentDate), 0))
    

    당신에게 주는 것은2015-04-11 00:00:00.000(날짜 시간에도 시간이 있기 때문이죠?)미묘하죠?

이렇게 하면 현재 달의 오늘을 포함한 총 일수가 제공됩니다.

select day(getDate())

SQL에서 날짜에 일 추가

 DECLARE @NEWDOB DATE=null
 
 SET @NEWDOB= (SELECT DOB, DATEADD(dd,45,DOB)AS NEWDOB FROM tbl_Employees)

SELECT DateAdd(5,day(getdate())이것은 현재 날짜에 5일을 추가하기 위한 것입니다.foreg: 오늘 날짜는 23/08/2018입니다. 위의 쿼리를 사용하여 28/08/2018이 되었습니다.

언급URL : https://stackoverflow.com/questions/23013277/how-to-add-days-to-the-current-date

반응형