배열로 저장된 db값 검색

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
배열로 저장된 db값 검색

QA

배열로 저장된 db값 검색

본문

예를들어 type1 컬럼에 값이 배열로 들어가기도 하는데요

where type1 like '%{$sch['type1']}%' 식으로 검색문을 짜니까 검색이 안되는데

 

질문은 배열로 저장된 db값을 검색 할때 where type1 like '%{$sch['type1']}%' 를

어떻게 함수를 써야 할까요~?

662111144_1585589629.149.png

이 질문에 댓글 쓰기 :

답변 4

배열로 저장을 하실때

|로 배열값을 문자열로 만들어주신것 같은데요

 

mysql db 입장에서

 

type1의 값들이 배열로 인지하는 | 가 포함된 문자열일지

그냥 문자열일지 알기는 모호합니다.

 

만약 배열을 2개짜리 정형화된 구조라면

 

where  ( type1 like '%{$sch['type1']}%|%'  or type1 like '%|%{$sch['type1']}%' )

 

의 구조로 둘중에 어떤것이든 검색 하는 형태로 가능할것으로 생각됩니다.

 

MySql 함수중에 

INSTR(컬럼 , 검색어) 

라는 함수가 있습니다.

 

검색할때 like 보다 좀더 빠르고 like같이 작동하는 기능입니다.

대신 위의 예와 같이 사용은 어렵고

 

where  instr( type1 , '{$type1}' )

로 사용 가능합니다.

 

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

회원로그인

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