2009-07-19 2 views
1

한 테이블에서 다른 테이블로 데이터를 이동하고 날짜 필드가 null에서 기본값으로 변경되기를 원합니다. SQL Server (2000)에서이 작업을 수행하는 가장 좋은 방법은 무엇입니까?SQL Server select 문에서 null 값을 대체 할 수 있습니까?

나는 Access에서 IIf 함수와 비슷한 것을 원한다. IIF처럼 (DateBegin이 null, # 1/1/2000 #, DateBegin)

+0

ISNULL과 COALESCE의 차이점은 무엇입니까? 그들은 둘 다 작동하는 것처럼 보이지만, isnull은 나를 멍청이로 쉽게합니다. 사람은 더 잘 수행합니까? 이것은 일회성 쿼리를위한 것이었지만 더 나은 경우가 있습니까? – Robert

+0

하나의 값으로 만 ISNULL을 사용할 수 있습니다. COALESCE는 여러 값과 함께 사용할 수 있습니다. –

답변

3
INSERT INTO destTable (dateColumn, otherColumn) 
SELECT ISNULL(dateColumn, '2000-01-01'), otherColumn 
FROM sourceTable 
1

ISNULL 연산자를 사용하십시오.

0

coalesce을 사용하면이 작업을 수행 할 수 있습니다.

0

당신은 당신의 선택 문에 병합 연산자를 사용할 수 있습니다

SELECT ..., COALESCE(datecolumn, 'default date') FROM SOURCE_TABLE 

그것은 최초의 null 이외의 값을 돌려줍니다.