sql에 관한 질문입니다^^

sql에 관한 질문입니다^^

QA

sql에 관한 질문입니다^^

본문

wr_id     wr_50

1내용    111

6내용    666

7내용    777

8내용    888

 

select * from table where wr_50 in (666, 777);

여기 까지는 문제가 없죠

 

그런데

wr_id     wr_50

1내용    111|222

6내용    666|333

7내용    777|444

8내용    888|555

 

select * from table where wr_50 in (666, 777);

이러면 검색이 안되죠 ㅡ.ㅜ

 

wr_50에 | 문자를 기준으로 데이터 값이 들어 값니다. 이럴때 mysql select문 으로 해결할수 있는 방법이 있을까요?

 

 

이 질문에 댓글 쓰기 :

답변 3

666 777처럼 검색하려는 값이 무조건 데이터의 앞에 붙는다면

select * from table where wr_50 regexp('^​(666|777)\|'); 

이렇게 하면 되겠지만 검색어가 뒤에도 붙을수 있다면..

select * from table where wr_50 regexp('^​(666|777)\|') or wr_50 regexp('\|​(666|777)$');

이런식으로 하면 되지않을까 싶긴 합니다만.. 테스트는 못해봤습니다. ^^;;

답변을 작성하시기 전에 로그인 해주세요.
전체 10,637
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT