2013-11-21 4 views
0

여러 예외가있는 파일 이름의 첫 번째 부분을 문서 이름으로 구문 분석해야합니다.구문 분석 파일 이름

파일 이름 :. 테스트 파일 이름 서비스, LLC - 11-30-12 ASW.pdf "나에게 액션 생산 서비스, LLC의 결과를주고, 잘 작동

update Test_Base_Form 
set [Document Name]=LEFT([Document Name],CHARINDEX('-',[Document Name]) - 1) 
where docid={sys docid} 

가 나중에 문제에 달려 내가 좋아하는 일부 파일 이름을 남겼 :. - "-" "테스트 - 파일 이름이 아닌 생산 1-12-13.pdf을"

내가 앞과 뒤에 공백을 추가하는 문제를 해결하려면

update Test_Base_Form 
set [Document Name]=LEFT([Document Name],CHARINDEX(' - ',[Document Name]) - 1) 
where docid={sys docid} 
.

새로운 문제 내가 할 수있는 일 o 파일 이름에 "-"앞에 또는 앞에 공백이 있으면 이름을 짧게 잘라 내 결과를 버리게됩니다. 값을 반환하기 전에 이러한 각 예외를 검사 할 수 있습니까?

답변

0
update Test_Base_Form 
set [Document Name] = 
    case 
     when [Document Name] like '% - %' then 
      LEFT([Document Name],CHARINDEX(' - ',[Document Name]) - 1) 
     when [Document Name] like '%- %' then 
      LEFT([Document Name],CHARINDEX('- ',[Document Name]) - 1) 
     when [Document Name] like '% -%' then 
      LEFT([Document Name],CHARINDEX(' -',[Document Name]) - 1) 
     else 
      [Document Name] 
    end 
where docid={sys docid} 
+0

답장을 보내 주셔서 감사합니다. 완벽하게 작동합니다. –