2014-02-27 3 views
-2

다음 하위 쿼리는 일부 null 및 일부 값을 반환합니다. null이 아닌 행을 선택하려면 어떻게해야합니까?쿼리에서 NULL 필터링

 ,(select distinct LEDGERTABLE.ACCOUNTNAME 
    FROM ledgertrans 
    Where Salesline.SalesID = #tempCMs.SALESID and salesline.DIMENSION = 
     (Select top 1 Ledgertrans.Dimension 
     From LedgerTrans 
      Where Ledgertrans.Voucher = #tempCms.InvoiceID and LedgerTrans.AccountNum = Ledgertable.Accountnum) 
) As 'Account' 

감사

답변

3

필터 IS NOT NULL

NULL의이 시도 :

(select distinct LEDGERTABLE.ACCOUNTNAME 
    FROM ledgertrans 
    Where Salesline.SalesID = #tempCMs.SALESID and salesline.DIMENSION = 
     (Select top 1 Ledgertrans.Dimension 
     From LedgerTrans 
      Where Ledgertrans.Voucher = #tempCms.InvoiceID 
      and LedgerTrans.AccountNum = Ledgertable.Accountnum 
      AND LEDGERTABLE.ACCOUNTNAME IS NOT NULL) 
) As 'Account' 

NULL동등성 시험 (!= NULL)와 필터링되지됩니다 NULL 값이기 때문에 알 수 없으므로 평등은 불가능합니다. etermined.

2

WHERE 절에 AND LEDGERTABLE.ACCOUNTNAME IS NOT NULL을 추가하십시오.

관련 문제