2016-09-28 5 views
-2

의 난이 값SQL, 전후 추출 정수 '-'문자열

row 1 Spare Part ##:  **704604-001** part 
row 2 Spare Part #: **511778-001** 
row 3 part number, a list of common parts follows...**439730-001**)Part number Description 

row 4 Spare Part:  **774172-001**
Memory Board Nu 
row 5 Spare Part:**639852-001** 

내가 문자열에서 단지 XXXXXX-001의 압축을 가진 열이. 예제 결과 :

704604-001 
511778-001 
439730-001 
774172-001 

누구든지 나를 도와 줄 수 있습니까?

SQL 2012

+0

정규 표현식 당신을 위해 작동합니다. –

+4

어느 것. RDBMS. 아르. 당신. 사용하기. –

+0

'split_part()'또는'string_to_array()'사용 –

답변

2

원하는 표현의 값이 항상 동일한 경우 :

declare @row nvarchar(500) 
set @row = 'row 1 Spare Part ##:  **704604-001** part' 

select substring(@row,CHARINDEX('-',@row)-6,10) 

반환 :

704604-001 
+0

내 문제가 해결되었습니다. 고맙습니다. – rajlesta

+0

방금이 사이트에 가입했기 때문에 투표를 할 수 없었습니다. – rajlesta

+1

와우, RDBMS에서 작동하는 정확한 함수 이름을 사용했기 때문에 문제를 해결했습니다. 약 20 분 동안 비밀을 유지하고있었습니다. 좋은. –