쿼리문 해석좀...ㅠ

쿼리문 해석좀...ㅠ

QA

쿼리문 해석좀...ㅠ

답변 2

본문

안녕하세요~

 

mysql문 중에

(REPLACE(g.goodsNm, ' ', '') LIKE concat('%',?,'%') OR g.goodsNm LIKE concat('%',?,'%')) 

이런게 있는데 

어떤 뜻인가요??

이 질문에 댓글 쓰기 :

답변 2

(REPLACE(g.goodsNm, ' ', '') LIKE concat('%',?,'%') OR g.goodsNm LIKE concat('%',?,'%')) 

 

REPLACE(g.goodsNm, ' ', '')

글자를 바꾸겠다, g.goodsNm 필드의 ' ' 을 '' 로 (공백인 문자열을 공백없이 바꾸겠다.)

 

LIKE concat('%',?,'%')

concat은 둘 이상의 문자열을 입력한 순서대로 합쳐서 반환해주는 함수입니다.

즉, %?% 가 들어간 문자열을 찾는다.

 

OR g.goodsNm LIKE concat('%',?,'%')) 

위의 조건문에 추가되어 OR 또는

g.goodsNm 필드에 %?% 가 들어간 문자열을 찾아서

 

글자를 바꾸겠다 라는 의미 같습니다.

컬럼 명을 봐서는 상품 이름에 특정 단어 포함된 상품을 검색하는 듯한데

동작하지는 않을 듯하네요.

like와 concat이 생각대로 동작하지 않을 겁니다.

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 10,635
© SIRSOFT
현재 페이지 제일 처음으로