0
내 테이블에 시작일과 종료일 두 개가 있습니다.이 두 열은 모두 null입니다. 값이 둘 다 채워지면 끝 날짜가 시작 날짜보다 큰지 확인하고 싶습니다. SQL Server 2008에서이를 수행하기위한 점검 제한 조건을 작성하려면 어떻게해야합니까?SQL 서버 검사 종료 날짜가 시작일보다 깁니다.
내 테이블에 시작일과 종료일 두 개가 있습니다.이 두 열은 모두 null입니다. 값이 둘 다 채워지면 끝 날짜가 시작 날짜보다 큰지 확인하고 싶습니다. SQL Server 2008에서이를 수행하기위한 점검 제한 조건을 작성하려면 어떻게해야합니까?SQL 서버 검사 종료 날짜가 시작일보다 깁니다.
뭔가를 시도?
WHERE (enddate IS NOT NULL AND startdate IS NOT NULL AND enddate > startdate)
는 간단
ALTER TABLE dbo.yourtable ADD CONSTRAINT CK_yourtable_dates
CHECK (ISNULL(startd, SYSDATETIME) < ISNULL (endd, SYSDATETIME))
NULL의 경우에는 systdate와 비교합니다. 질문에 언급 된 내용입니까? – sll
언급되지 않았습니다 ...하지만 CHECK 제약 조건은 모든 삽입/업데이트에서 실행되며, 질문에 따라 null이 아니면 안됩니다. – Yahia
내 원본 주석은 CHECK 제약 조건이있는 원래 응답과 관련이 없습니다 \ – sll