[sql like 문의] wr_3에 '대나무' 같은 글자도 '대'자가 있다가 추출이 됩니다.

[sql like 문의] wr_3에 '대나무' 같은 글자도 '대'자가 있다가 추출이 됩니다.

QA

[sql like 문의] wr_3에 '대나무' 같은 글자도 '대'자가 있다가 추출이 됩니다.

본문

wr_3에 '대' 자 단어를 추출하려고 하는데요

wr_3에 '대나무' 같은 글자도 '대'자가 있다가 추출이 됩니다.

대나무 글자는 추출이 안되게하려면 어떻게해야 될까요?

 

$sql = " select wr_4 from g5_write_test where wr_id = '$wr_id' and wr_3 like '%대%'";

이 질문에 댓글 쓰기 :

답변 5

원하는게 정확히 어떤건지 알려주시면 도움이 되겠네요

대나무만 안되게 할려면

$sql = " select wr_4 from g5_write_test where wr_id = '$wr_id' and wr_3 like '%대%' and wr_3 <> '대나무')";

이렇게 하면 되겠네요

나시님 답변 감사드립니다. 설명을 쉽게하려고 대나무로 표현하였습니다.
설명을 다시 드리겠습니다.

wr_3 에 대,중,소,대+중,중+소,대+소 이렇게 6개 중 하나가 저장되는데요. "대"자 글자 추출을 할때 대+중 이나 대+소 가 저장된 게시물도 추출되어 수량에 넣어버려서요. 오로지 결합된 문자없이 "대"자만 추출할 방법은 없을까요?

그런식이면
$sql = " select wr_4 from g5_write_test where wr_id = '$wr_id' and wr_3 like '대' ";
이렇게 하시던지
$sql = " select wr_4 from g5_write_test where wr_id = '$wr_id' and wr_3 = '대'";
이런식으로 하시면 좋겠네요

도메인이 여섯개라면 해당하는 글자만 넣어서
$sql = " select wr_4 from g5_write_test where wr_id = '$wr_id' and wr_3 in ('대','소') ";
이런식으로 여러개를 검사할수도 있구요

'대' 만 들고 오려면 like 말고 그냥 wr_3 = '대' 로 쓰면 안되나요?

 

굳이 like를 쓰시려면...

strlen 이었던가요.. 변수의 길이를 가져와서 처리를 해도 될 것 같은데요?

만약에 '대' 의 length가 1이면 wr_3 like '%대%' AND wr_3 <= 1

이정도만 해도 될 것 같습니다.

 

wr_3에

대나무의자 중 30cm, 고목나무 대 30cm 

이런식으로 저장이 된다는말씀이신가요

 

네. "대나무 의자 대 30cm" 이런식으로 저장이 되어 있고, 크기를 호출하려고 하는데, 대자가 들어가면 무조건 수량으로 인식이 됩니다. 그래서  "대나무 의자 중 30cm" 이렇게 저장된 게시물도 대자로 수량이 잡혀서 문제가 되어요.

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

회원로그인

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