database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
ㆍOracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Oracle Q&A 26673 게시물 읽기
No. 26673
오라클에서 숫자만 검색할려면 어떻게 하나요???
작성자
문상옥(saogi)
작성일
2006-05-08 10:35
조회수
5,077

오라클에서 여러가지 필드중에 varchar2(10)으로 된 필드에 데이타가 앞에 4자리 숫자로 된 데이타만 가져오려면 어떻게 해야 하나요?

대략 10만건 정도 되는 데이타가 있는데 10자리 전부 숫자로만 받아야 하는데 가끔 문자나 부호가 들어가 있는 데이타가 있습니다

어떤 문자나 부호가 들어가 있는지는 데이타 건수가 많아서 일일이 확인을 못하구요

ㅠ.ㅠ

 

substr(test, 1, 4) 이렇게 하면 ora-01722:수치가 부적합하다고 나옵니다 ㅠ.ㅠ

문자필드에 데이타10개 중에 앞에4개 "숫자"인것만 가져오려면 어떻게 해야 하나요?

 

초보라 자세하게 답변 부탁드립니다 (__);

좋은 하루 보내세요 ^^;

 

이 글에 대한 댓글이 총 2건 있습니다.

저도 내공이 부족한지라

 

where 절에

 

where 1 = (  case when

       substr(test, 1,1) >=0 and  substr(test, 1,1) <=9

and substr(test, 2,1) >=0 and  substr(test, 2,1) <=9

and substr(test, 3,1) >=0 and  substr(test, 3,1) <=9

and substr(test, 4,1) >=0 and  substr(test, 4,1) <=9

then 1 else 0 end)

 

와 같은 식으로 사용하면 될거 같습니다.^^;; 너무 허접하죠

아마 오라클 함수중에 숫자 체크 함수있을건데 숫자인지 비교 함수쓰면

 

where 1 = (  case when

       숫자비교함수(substr(test, 1,4)) then 1 else 0 end)

조기영(darkelf)님이 2006-05-08 11:23에 작성한 댓글입니다.
이 댓글은 2006-05-08 11:25에 마지막으로 수정되었습니다.

지식즐에도 올리셨는데^^

 

여기서도 뵙습니다..

 

select substr(translate(10자리컬럼,'1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.-=','1234567890'),1,4) as 자릿

from 테이블

 

하면 1~0까지는 그대로 나오고, a~Z까지는 NULL이 되어 사라집니다.

특수문자는 .-= 까지만 적었는데. 필요에 따라 더 적으시면 됩니다.

 

 

 

cReAm(catz)님이 2006-05-08 13:36에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
26676프로시져에서 데이터가 있으면 테이블조인을 하고 그렇지 않는경우 조인을 하지 않는 방법이 있습니까? [1]
조기영
2006-05-08
1392
26675chained rows 가 뭘 의미 하는 건지요 ? [1]
까먹지마
2006-05-08
3102
26674Package를 권한 설정할 때... [2]
초보
2006-05-08
4687
26673오라클에서 숫자만 검색할려면 어떻게 하나요??? [2]
문상옥
2006-05-08
5077
26670imp 할 때 error가 발생합니다. [1]
이수정
2006-05-08
2991
26669select 하면 테이블이 없다고 나옴... [1]
^^
2006-05-08
1309
26668v$sqltext 에 대해서... [5]
까먹지마
2006-05-07
7650
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.048초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다