반응형
SQL Server에서 오늘부터 최근 30일간의 레코드 가져오기
SQL Server에 대해 간단한 질문이 있습니다. 이 테이블에서 최근 30일 정보를 가져오는 방법
샘플 데이터:
Product
:
Pdate
----------
2014-11-20
2014-12-12
2014-11-10
2014-12-13
2014-10-12
2014-11-15
2014-11-14
2014-11-16
2015-01-18
이 테이블 데이터를 바탕으로 아래와 같은 출력을 원합니다.
pdate
-------
2014-11-20
2014-12-12
2014-12-13
2014-11-16
이 쿼리를 시도했습니다.
SELECT *
FROM product
WHERE pdate >= DATEADD(day, -30, getdate()).
하지만 지금은 정확한 결과를 주고 있습니다.SQL Server에서 이 문제를 해결하는 방법을 알려주시기 바랍니다.
조건 하나 더 추가where clause
SELECT * FROM product
WHERE pdate >= DATEADD(day,-30,GETDATE())
and pdate <= getdate()
아니면 사용DateDiff
SELECT * FROM product
WHERE DATEDIFF(day,pdate,GETDATE()) between 0 and 30
사용가능DateDiff
이 일로쿼리의 where 절은 다음과 같습니다.
where DATEDIFF(day,pdate,GETDATE()) < 31
나는 왜 이렇게 복잡한 답들이 여기에 있는지 모르겠지만 이것이 내가 할 일입니다.
where pdate >= CURRENT_TIMESTAMP -30
오어WHERE CAST(PDATE AS DATE) >= GETDATE() -30
아래 쿼리는 지난 30일간의 레코드에 적합합니다.
여기서 리뷰 테이블을 사용해봤는데요.review_date
검토 테이블의 열입니다.
SELECT * FROM reviews WHERE DATE(review_date) >= DATE(NOW()) - INTERVAL 30 DAY
이 제품은 잘 작동합니다.
SELECT * FROM product
WHERE pdate BETWEEN datetime('now', '-30 days') AND datetime('now', 'localtime')
열을 기준으로 지난 30일 동안의 데이터를 얻을 수 있습니다.
WHERE DATEDIFF(dateColumn, CURRENT_TIMESTAMP) BETWEEN 0 AND 30
언급URL : https://stackoverflow.com/questions/27479856/get-last-30-day-records-from-today-date-in-sql-server
반응형
'programing' 카테고리의 다른 글
활동 외부에서 활동 시작()을 호출하시겠습니까? (0) | 2023.10.18 |
---|---|
MySQL 왼쪽 조인 다중 조건 (0) | 2023.10.18 |
Oracle: SQL 또는 PL/SQL을 사용하여 파일 이름 확장명을 추출하는 가장 빠른 방법 (0) | 2023.10.18 |
Timber RSS 피드 이슈가 있는 사용자 지정 보관 페이지 (0) | 2023.10.18 |
INSTALL_FAILED_DEXOPT 오류를 해결하려면 어떻게 해야 합니까? (0) | 2023.10.18 |