SQL
에 2 개의 문자열을 볼 수있는 수식을 쓰려고합니다. 결과는 모두 일치하는 문자입니다.SQL에서 두 문자열을 비교하고 일치하는 모든 문자 만 가져 오는 방법은 무엇입니까?
편집 : 쿼리 IBM DB2
편집에 대하여 : 비교 ABP AP = AP
예 :
ABP compared to ABMP = ABP
MP compared to P = P
AP compared to BMP = P
ABP compared to AP = AP
SQL
에 2 개의 문자열을 볼 수있는 수식을 쓰려고합니다. 결과는 모두 일치하는 문자입니다.SQL에서 두 문자열을 비교하고 일치하는 모든 문자 만 가져 오는 방법은 무엇입니까?
편집 : 쿼리 IBM DB2
편집에 대하여 : 비교 ABP AP = AP
예 :
ABP compared to ABMP = ABP
MP compared to P = P
AP compared to BMP = P
ABP compared to AP = AP
내가 SQL이라고 생각하지 않습니다 이 문제에 매우 잘 어울리면, ch로 문자를 비교할 수있는 프로그래밍 언어로 할 수 있습니다. aracter.
어떤 데이터베이스를 사용하고 있습니까? 원하는 것을 달성하고 SQL 문에서 함수를 호출 할 수 있도록 사용자 정의 함수를 작성하는 옵션이있을 수 있습니다.
UPDATE
나는 IBM DB2는 위의 제안으로 고객 함수를 작성하는 데 사용할 수있는 절차 확장을 제공 믿습니다. 불행히도 DB2에 대한 경험이 없으므로이 문제를 해결할 수 없습니다. 나는 당신을 위해 몇 가지 정보는 다음 링크를 발견 :
나는이 길을 따라 여행 할 것이다. 고마워요! – Shatterday
SQL Server가있는 경우 CLR 저장 프로 시저를 사용하는 것이 좋습니다. – HLGEM
, 문제는 완전히 요구 사항을 지정하지 않습니다,하지만 명시된 바와 같이 문제는이 입력 주어 해결할 수 있습니다
create table Temp
(
id int,
val varchar(1000)
);
insert into temp values
(1,'ABMPZ'),
(2,'AM');
with t (id, c, n) as (
select id, substring(val,1,1), 1 from temp
union all
select t.id, substring(temp.val, t.n+1, 1), t.n+1 from t, temp
where t.id=temp.id and t.n < 1000 and t.n < len(val)
)
select t1.c from t t1, t t2
where t1.id = 1 and t2.id = 2 and t1.c = t2.c
,536 :이 같은 뭔가
ABP와 AP =? – Blorgbeard
그런 것들은 원하는 프로그래밍 언어로 더 잘 수행됩니다 (SQL은 프로그래밍 언어가 아닙니다). – fancyPants
ABP는 AP = 'AP' – Sachin