쿼리 질문 좀 드립니다~
본문
질문 좀 드립니다.
$wr_7 = "$ext7_00|$ext7_01|$ext7_02";
이렇게 값을 입력하고 $ext7_02만 비교해서 찾아낼려면 어떻게 해야하나요?
ex)
$wr_7[0] = "사과|배|바나나";
$wr_7[1] = "바나나|사탕|젤리";
select * from write_table where ?????='바나나'
부탁드립니다~~
답변 2
DB에 저장된 컬럼의 값의 입장에서는
위의 예는 | 로 구분되던 안되던
그저 문자열로 인식됩니다.
컬럼명이 wr_7 이라고 가정하고
맨뒤의 바나나만 찾기를 원하면
select * from write_table where wr_7 like '%|바나나'
정도로 찾을수있겠죠
문자열의 특성을 판단해서 조회하는 밖에는없습니다.
방법이 좋습니다.
정규식(http://www.w3big.com/ko/mysql/mysql-regexp.html)으로 찾던지
아니면 like로 검색 후 해당값을 explode()로 나눠서 3번째 값인지 확인하는 방법
음 또 다른 방법이 있으려나??
답변을 작성하시기 전에 로그인 해주세요.