2026, 새로운 도약을 시작합니다.

mysql 컬럼에 문자열이 포함되어있는 데이터 추출 채택완료

안녕하세요.

mb_1 컬럼에 

30 | 50 | 40 | 70 | 900 | 123 | 121 | 144 | 1100 | 1230

10 | 110 | 120 | 500  와 같은 데이터가 있습니다.

mb_1 필드에서 10이 포함된  데이터만 출력하려고 합니다.

like 는 10 110 둘다 포함되니 안되고

구박사검색해서  SUBSTRING_INDEX union all 사용해봤는데 해당 컬럼의 값이 가변적으로 늘어날수

있어 힘든부분이 있구요

배열로 뽑은후 php 쪽에서 조건 처리하는 방법도 있지만

쿼리쪽에서 처리하고 싶은데

도움을 부탁드리겠습니다.

감사합니다.

답변 3개

채택된 답변
+20 포인트

SELECT * FROM #table WHERE mb_1 RLIKE "[[:<:]]10[[:>:]]"

몇 개의 데이터를 갖고 테스트했습니다.

정확히 나오는지 여기 저기 테스트 해 보시기 바랍니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

WHERE FIND_IN_SET('10', replace(mb_1, '|', ','));

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

구분값인  "10 |" 까지 쿼리를 돌리는 방법??

물론 데이터값 들어갈때 마지막값을 생각해서 항상 |값으로 마감을 해줘야하겠지만요

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고