2016-09-29 4 views
1

URL 목록을 살펴보기 위해 sql 쿼리를 작성했습니다. 나는 단지 정규 표현식에서 매우 제한된 지식을 가지고 있으며 SQL에서는 사용하지 않았다.알파벳이 아닌 SQL 정규식

website라는 테이블이 나는 단어 act을 가지고 URL을 찾으려면 무엇 내가 할 노력하고 있어요 url

라는 열이 말해봐.

select * 
from website 
where url like '%act%' 

는하지만 내가 바로 전이나 단어 act 후 모든 알파벳 문자를 싶지 않아 깨달았다.

나는 정규식이 내가 필요한 것을 줄 수 있음을 알고 있지만, 나는 단지 SQL 구문에서 그것을 사용하는 방법을 알 수 없다.

+0

가 실행중인 어떤 DBMS : 당신은 단지 이전과 이후의 문자에 대해 신경 경우

where url like '%act%' and url not like '%[^a-zA-Z]%' 

를? SQL 서버, MySQL, PostgreSQL 등? – Nicarus

+0

(Microsoft?) SQL 서버 – Mufasa

+0

어떤 버전을 사용하고 있습니까? – Nicarus

답변

1

그런 다음 문자열에 알파벳 문자, 원하는 경우 :

where url like '%[^a-zA-Z]act[^a-zA-Z]%' 
+0

입니다.' '% [a-zA-Z]가 [a-zA-Z] % [a-zA-Z] %'와 같은 곳에서는 과 같이 어디서나 URL이 " 연습 "이란 단어는"행위 "를 포함하지만 전후에 알파벳 문자가 있습니다. – Mufasa

+0

양쪽 괄호 안에 a 앞에 ^를 붙이십시오. [^ a-zA-Z] @HiJaeKim – scsimon

+0

@HiJaeKim. . . 그것은 오타였습니다. 문자 집합에 부정이 있어야합니다. –

관련 문제