简化SQL语句解决办法
简化SQL语句
这段SQL是一个WHERE条件,如何简化?
------解决方案--------------------
- SQL code
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条件,如何简化?
------解决方案--------------------
- SQL code
where A.FinanceSubjectID IS NULL or ','+A.FinanceSubjectID+',' like '%,' + CAST(T.FinanceSubjectID AS VARCHAR(50))+ ',%'
------解决方案--------------------
++
------解决方案--------------------
两个表里面的FinanceSubjectID 分别是值?
------解决方案--------------------
- SQL code
where ','+isnull(A.FinanceSubjectID,T.FinanceSubjectID)+',' LIKE '%,' + CAST(T.FinanceSubjectID AS VARCHAR(50))+ ',%'
------解决方案--------------------
where
CHARINDEX(A.FinanceSubjectID,CAST(T.FinanceSubjectID AS VARCHAR(50)))>0 or OR A.FinanceSubjectID IS NULL