2012-10-17 2 views
1
내가 좋아하는 쿼리 시도 나에게 0-1000

찾기 편지

에서 숫자를 포함하는 열을 찾기 위해 오라클을 조회하는 방법

: ^[0-9]+$ (이하 ^\d+$)에

select (Column_name) 
from (table_name) 
where regexp_like(CREDIT_BANK_BRANCH,'^[0-999]$'); 
+1

이 문제를 해결하면 답을 수용해야합니다. –

답변

0

변경 정규식 해당 열의 숫자가 포함 된 행만 반환하려는 경우

숫자가 아닌 문자로 레코드를 찾으려면 [^0-9] (또는 더 짧게 \D)을 사용하십시오.

자세한 내용은 Using Regular Expressions in Oracle Database을 참조하십시오.

+0

나는 숫자가 0-1000이라는 것을 알았는지 오류가 발생 했는가? 나에게 새로운 것이 유감 스럽다. 열에있는 모든 숫자를 찾을 수있는 질의가 있다면 그것은 완벽 할 것이다. . – user1753142

+0

어쩌면 내가 질문을하지 않았을 수도 .... 내가 테이블에 테이블을 가지고 내가 쿼리해야 하나의 열이 ... 내가 문자를 포함하는 모든 행을 찾아야 – user1753142

2

사용이 정규 표현식 :

^([0-9]{1,3}|1000)$ 

설명 : 문자로 모든 것을 처리 할 수 ​​있도록

정규 표현식 그래서, 숫자 식을 계산할 수 없습니다

은 어떤 그룹을 찾기 1 ~ 3 자 길이의 숫자 : [0-9]{1,3} 또는 숫자가 1000입니다.

파이프는 표현의 에스코프를 제한하기 위해 "또는"과 괄호가 필요하다는 것을 의미합니다.

짧은 버전 : 테스트

^(\d{1,3}|1000)$ 

는 :

enter image description here