这实际上适用于之前的问题,TSQL 2008 USING LTRIM(RTRIM and Still Have SpacesTSQL CASE WHEN那么syntax - 使用更换
我在写使用OMG小马语句删除非空非可见字符一个非常漫长的SELECT语句的点
(WHEN PropStreetAddr is NOT NULL THEN
(SELECT LTRIM(RTRIM((REPLACE(PropStreetAddr,
SUBSTRING(PropStreetAddr,
PATINDEX('%[^a-zA-Z0-9 '''''']%',
PropStreetAddr),
1), '') AS PropStreetAddr)
查询:
SELECT
CASE WHEN LOAN_NUMBER IS NOT NULL THEN
REPLACE(LOAN_NUMBER,SUBSTRING (LOAN_NUMBER,PATINDEX(' %[^a-zA-Z0-9 '''''']% ' , ' ') as LOAN_NUMBER.
,CASE WHEN MERS_ID IS NOT NULL THEN
REPLACE( MERS_ID,SUBSTRING (MERS_ID,PATINDEX(' %[^a-zA-Z0-9 '''''']% ' , ' ') as MERS_ID
...127 more lines of similar statements
当我检查语法我收到此错误指向第一个case语句SELECT后:
Msg 156,Level 15,State 1,Line 143 关键字'as'附近的语法不正确。
有人可以帮助我了解我失踪了吗?
+1 ...和REPLACE(SUBSTRING(PATINDEX(目前没有逻辑意义)... – Tahbaza 2010-08-02 23:20:44
OMG,我一直在看这个代码太长了!我感谢您的意见和抬起头来..这里是什么看到我需要解决这个问题..所以非常抱歉,我错过了这个更早... 选择案例当LOAN_NUMBER不是NULL然后替换(LOAN_NUMBER,SUBSTRING(LOAN_NUMBER,PATINDEX('%[^ a-zA-Z0-9 '''''']%',LOAN_NUMBER),1),'')以LOAN_NUMBER结尾等等 – JMS49 2010-08-02 23:27:56