2017-10-30 2 views
0

ACCESS의 각 고객에 대한 월별 판매 테이블이 있습니다. 필드 이름은 Sales_201601, Sales_201602 등이며 모든 데이터 새로 고침과 함께 동적으로 변경됩니다.MS 액세스의 모든 필드에 대해 null 값을 0으로 변환합니다.

구조체가 Sales_ : 인 모든 열을 자동으로 선택하고 ACCESS에서 null 값을 0으로 변경하는 SQL 쿼리를 찾고 있습니다.

테이블에 많은 열과 필드 이름이 시간이 지남에 따라 변경되므로 필드 이름을 개별적으로 지정할 수 없습니다. 따라서 필드 이름을 사용하여 동적으로 변경되는 코드를 작성해야합니다.

저는 MS 액세스에 초보입니다. 도와주세요.

감사

+1

공백은 null과 같지 않습니다. Null은 0과 동일하지 않습니다. – jarlh

+0

[Access 2010 - null로 대체해야 함] (https://stackoverflow.com/questions/6922308/access-2010-need-to-replace-a-) null-with-a-value) –

+0

이런 식으로 테이블을 사용하지 마십시오. 크로스 탭 쿼리를 사용하십시오. – Gustav

답변

0

당신은 개별적으로 필드를 업데이트 할 수는 :

update t 
    set Sales_201601 = nz(Sales_201601, 0), 
     Sales_201602 = nz(Sales_201602, 0) 
    . . . ; 

더 중요한 것은, 당신은 미래에이 문제를 방지하려면. 열을 not null으로 설정하고 기본값을 설정하는 것이 좋습니다. 나는 MS Access에서 다음과 같이 작동한다고 생각한다.

alter table t alter Sales_201601 not null default 0; 

테이블에 새로운 열이 추가되면이 작업을해야한다.

한편, 각 열이 별도의 행에 있으면 훨씬 간단 해집니다.

+0

고마워요,하지만 'Sales'라는 키워드가있는 모든 필드를 동적으로 선택하고 해당 필드의 null 값을 0으로 변경하는 코드를 찾고 있습니다. – Bi1207

관련 문제