Skip to main content
(*.233.123.176) 조회 수 8514 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

문제)


아래와 같은 컬럼을 갖는 테이블 t가 있을때,


with t as (
select '5500' column_a from dual union all
select '554' from dual union all
select '5540' from dual union all
select '55' from dual union all
select '5539' from dual)


변수 '5544' 로 주어진다면, 주어진 변수값과 처음 1byte씩 비교했을때,
처음부터 연속으로 가장 많이 매칭되는 값을 가진 행을 구하는 쿼리를 만드는 것이다.
즉, 위에서 결과값은 '554'가 되겠다.
'5540'은 매칭되지 않는 문자 '0'이 있기때문에 제외해야 한다.







답변)


쿼리는 아래와 같다.



SELECT MAX (column_a)
  FROM t
WHERE '5544' LIKE column_a || '%'



출처 : http://www.soqool.com
자세한 출처 : http://www.soqool.com/servlet/board?cmd=view&cat=100&subcat=1010&seq=677&page=2&position=2
TAG •

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

나눔고딕 사이트로 가기

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5