SQL Server 에서 ISNULL 을 사용 하여 빈 값 판단 조 회 를 실행 합 니 다.
select isnull(lastchanged,'') as lastchanged from vhhostlist where s_comment='test202'
원래 ISNULL 함 수 는 하나의 매개 변수 만 있 습 니 다.이 매개 변수의 값 이 NULL 인지 아 닌 지 를 판단 하고 NULL 이면 TRUE 로 돌아 갑 니 다.그렇지 않 으 면 FALSE 로 돌아 갑 니 다.그러나 SQLServer 의 검색 어 에서 isnull 은 두 개의 매개 변 수 를 필요 로 합 니 다.매개 변수 1 이 NULL 이면 매개 변수 2 를 isnull 함수 의 반환 값 으로 한 다 는 뜻 입 니 다.
즉,위 에서 조회 한 의 미 는 vhhostlist 표 의 s 를 조회 하 는 것 이다.comment='test 202'줄 lastchanged 필드 의 값 입 니 다.NULL 이면 빈 문자열 을 되 돌려 줍 니 다.
이전에 이것 을 몰 랐 을 때 이런 상황 을 만 났 던 것 을 기억 합 니 다.주문서 의 한 필드 는 status 이 고 주문 서 를 제출 할 때 status 는 NULL 입 니 다.프로그램 에서 다음 과 같은 판단 을 해 야 합 니 다.NULL 일 때 심사 하 는 하이퍼링크 를 표시 합 니 다.비어 있 지 않 을 때 심 사 된 문자열 을 표시 합 니 다.당시 의 프로그램 은 이렇게 썼 다.
if rs("status")<>"" then
response.write "<span style='color:red;'> </span>"
else
response.write "<a href=check.asp?id=" & rs("id") & "> </a>"
end if
사실 이러한 판단 은 신중 하지 못 한 것 이다.rs(status)<>"는 rs(status)가 이미 심사 한 것 과 같 지 않다.rs(status)<>"이외 의 상황 이 미 심 상태 임 을 나타 내지 않 습 니 다.가장 합 리 적 인 것 은 isnull(status,')as status 로 status 를 찾 는 것 이다.만약 rs(status)="는 재심 하지 않 았 다 는 것 을 나타 내 는데 이것 은 반드시 성립 된다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Redash를 사용할 때 몰랐던 SQL을 쓰는 법을 배웠습니다.최근 redash에서 sql을 쓸 기회가 많고, 이런 쓰는 방법이 있었는지와 sql에 대해 공부를 다시하고 있기 때문에 배운 것을 여기에 씁니다. Redash란? 월별로 데이터를 표시하고 싶습니다 주별로 데이터를 표...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.