A.FinanceSubjectID LIKE '%,' + CAST(T.FinanceSubjectID AS VARCHAR(50))+ ',%' 
OR A.FinanceSubjectID LIKE '%,' + CAST(T.FinanceSubjectID AS VARCHAR(50)) 
OR A.FinanceSubjectID LIKE CAST(T.FinanceSubjectID AS VARCHAR(50))+ ',%' 
OR A.FinanceSubjectID = CAST(T.FinanceSubjectID AS VARCHAR(50))
OR A.FinanceSubjectID IS NULL这段SQL是一个WHERE条件,如何简化?

解决方案 »

  1.   


    where A.FinanceSubjectID IS NULL
      or ','+A.FinanceSubjectID+',' like '%,' + CAST(T.FinanceSubjectID AS VARCHAR(50))+ ',%'
      

  2.   

    两个表里面的FinanceSubjectID  分别是值?
      

  3.   

    where
     ','+isnull(A.FinanceSubjectID,T.FinanceSubjectID)+',' LIKE '%,' + CAST(T.FinanceSubjectID AS VARCHAR(50))+ ',%' 
      

  4.   

    where
    CHARINDEX(A.FinanceSubjectID,CAST(T.FinanceSubjectID AS VARCHAR(50)))>0 or OR A.FinanceSubjectID IS NULL