2014-01-28 4 views
0

안녕하세요, 저는 코드를 보면서 조금 혼란스러워했습니다. 코드는 그냥 위의 쿼리에서 EffectiveDateExpirationDate의 목적을 알 필요가SQL 쿼리의 테이블이있는 값

DECLARE @missingStates varChar(30) 
SET @missingStates = Select StateCode FROM StateTable 
WHERE GETDATE() NOT Between StateTable.EffectiveDate AND StateTable.ExpirationDate 
PRINT 'States Missing Effective Models' 
PRINT @missingStates 

입니다.

여기서 나는 EffectiveDateExpirationDate을 알아야합니다. 이 열이 statetable입니까? 어떤 도움을 주셔서 감사합니다 :)

+1

예, 그렇습니다. (코드가 작동한다고 가정) – BRFennPocock

+0

예, 감사합니다. :) – user3220407

답변

0

그 쿼리에서 StateTable에 일정 기간 동안 정의 된 StateCode가있는 것처럼 보입니다. 예를 들어, 지금

Effective Date  Expiration Date  StateCode 
12-01-2013   12-31-2013   SC1312 
01-01-2014   01-31-2014   SC1401 

이 쿼리는 주어진 날짜 (오늘 = GETDATE()가) 어떤 날짜 범위 (EFFECTIVEDATE & EXPIRATIONDATE 사이에 떨어지는하지 주어진 날짜)가없는 경우를 얻을 수 있는지 확인하기 위해 노력하고있다 statecode. 데이터가 내가 위에서 가정 한 것 같은 경우 그 진술

  • 데이터가있는 경우에 대한 "TOP 1"이없는 경우 위의 나의 이해에서

    ,

    1. , 다음 쿼리가 실패합니다 위의 가정하지 않습니다, 쿼리가 작동합니다.