2012-12-18 6 views
0

숫자를 연결하여 테이블을 연결합니다.JOIN에서 사용할 숫자에서 소수점을 제거하십시오.

문제는 난을 제거하기 위해 할 수있는 일이 하나가 1234567 될 수 있으며, 다른 하나는 1234.567

것 있나요이다. 그래서 나는 테이블을 함께 연결하고 데이터를 가져올 수 있습니까? 이 중 열이 .이있는 경우, 그것의 것을 보장합니다

select a.cola, b.colb 
from tablea a inner join tableb b 
on replace(b.commonfield,'.','')=replace(a.commonfield,'.','') 

: 나는 당신은 그래서 일반적인 열에서이 개 테이블을 조인 할 수 있어야한다 SQL 서버 2008

+0

논리에 기반하여 12340 일치 12.34를 원하십니까? 약 1234 v.s. 0.1234? 일치해야합니까? – EricZ

+0

모두 0을 포함하는 전체 코드를 원합니다. – Scott

답변

0

을 사용하고

제거하고 번호 만 일치시킵니다.

+0

b.commonfield가 문자열 인 경우 작동하므로 값을 캐스팅해야 할 수도 있습니다. – JFH

+0

@JeffBond 아니오, replace는이를 자동으로 'varchar'로 캐스팅합니다. – Icarus

+0

그래서 변수를 문자열로 캐스팅해야합니다. 작동해야합니까? – Scott

관련 문제