"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > 쿼리에서 지난 7일을 구체적으로 요청하는데 지난 5일의 데이터만 가져오는 이유는 무엇입니까?

쿼리에서 지난 7일을 구체적으로 요청하는데 지난 5일의 데이터만 가져오는 이유는 무엇입니까?

2024년 11월 16일에 게시됨
검색:273

Why am I only getting data from the last five days when my query specifically asks for the last seven?

지난 7일간의 데이터 효율성 검색

SQL Server에서 MySQL로 데이터를 전송할 때 관련 데이터만 필터링하는 것이 중요합니다. 이 경우 최근 7일간의 데이터를 추출하는 것이 중요합니다. 그러나 제공된 SQL 쿼리에서 예상치 못한 결과가 나왔습니다.

문제: 데이터 누락

GETDATE()-7 AND GETDATE()를 활용하여 데이터를 필터링한 쿼리에서는 5일 분량만 검색했습니다. 결과. 이러한 불일치는 조사가 필요합니다.

해결책: 적절한 날짜 계산

SQL Server의 경우 GETDATE()는 현재 날짜와 시간을 반환합니다. 그러나 7일 전을 계산하려면 시간대와 일광 절약 시간을 고려하여 조정이 필요합니다. 이를 해결하기 위해 DATEADD(day,-7, GETDATE())를 사용합니다. DATEADD()는 현재 날짜에 지정된 일수(이 경우 -7)를 추가하여 지난 7일까지의 정확한 데이터 검색을 보장합니다.

따라서 수정된 쿼리는 다음과 같습니다.

SELECT id, NewsHeadline as news_headline, NewsText as news_text, state CreatedDate as created_on
FROM News
WHERE CreatedDate >= DATEADD(day,-7, GETDATE())

이 수정된 쿼리는 원하는 7일 분량의 데이터를 효과적으로 캡처하고 이전에 발생한 불일치를 해결합니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3