쿼리를 이용하여 테이블에서 테이블로 원하는 데이터를 인서트를 칠려고 하는데
각 테이블의 컬럼 데이터 타입이 다르네여
수신테이블의 데이터 형식인 문자형이고
데이터가 문자 + 숫자 + 기호(/*-) 가 섞여 있습니다.
여기서 숫자만 추출하는 방법좀 알려주세요
Comment 3
-
Terry
2015.10.01 14:54
-
한주댕이다
2015.10.01 17:23
감사합니다. ^^ 제가 검색는 예제가하면 잘 안찾아져요 ㅜㅜ
-
한태
2016.03.30 17:50
declare @var varchar(50)set @var='Nike330%#'Select PatIndex('%[0-9]%', @var)-->8, 숫자로 시작하는 위치 확인Select SubString(@var, PatIndex('%[0-9]%', @var), LEN(@var))-->330%#Select PatIndex('%[^0-9]%', SubString(@var, PatIndex('%[0-9]%', @var), LEN(@var)))-->4, 위의 결과값에서 숫자가 아닌 시작위치 확인Select PatIndex('%[^0-9]%', SubString(@var, PatIndex('%[0-9]%', @var), LEN(@var)) + 'X')-->4, LEFT의 경우 음수값은 처리할 수 없기 때문에 숫자로 끝날 경우에 대비하여 'X' 추가Select LEFT(SubString(@var, PatIndex('%[0-9]%', @var), LEN(@var)),PatIndex('%[^0-9]%', SubString(@var, PatIndex('%[0-9]%', @var), LEN(@var)))-1 )-->330
구글 검색하니 원하는 형태의 예제가 여러건 뜨는데요?;;
하기 사이트 참고하세요.
http://bestofsky.com/350
원출처는 여기 sqler 네요~