자료 조회가 이상합니다.

자료 조회가 이상합니다.

QA

자료 조회가 이상합니다.

본문

안녕하세요.

 

저의 테스트 환경은 아래와 같습니다.

  • Apache
  • 데이터베이스 클라이언트 버전: libmysql - mysqlnd 8.1.9
  • PHP 확장: mysqli 문서 curl 문서 mbstring 문서
  • PHP 버전: 8.1.9
  • GNU Version 5.5.8.3.2

디버깅해서 확인한 SQL 문의 결과가 1로 나옵니다.


SELECT COUNT(DISTINCT `wr_parent`) AS `cnt` FROM g5_write_ebook WHERE ((INSTR(wr_subject, '이상')) ) and (wr_num between -81 and (-81 + 10000))

 

그런데 실제 테이블에는 더 많은 레코드가 있거든요.

 

테이블이 아래와 같구요.

1914117670_1705798090.3599.png


걸리는 것은 사용환경이 맥북인데, 여기저기 뒤져보니 맥북의 한글처리가 문제가 있는것처럼 보이는데, 그걸까요?

테이블 인코드는 utf8_general_ci 입니다.

 

phpmyadmin에서 위 SQL을 던져도 결과는 같습니다. 

instr 대신이 like를 사용해도 같은 결과가 나오더라구요.

 

귀신에 홀린것도 아니고...

 

경험이 있으신 분의 조언을 부탁드립니다.

이 질문에 댓글 쓰기 :

답변 3

cnt가 1로 나온다는 건가요?row가1개 나온다는건가요?

위 sql문에서는 row가 1개 나오는건 정상이고, cnt는 1이나오면 이상한게 맞습니다.


SELECT COUNT(DISTINCT `wr_parent`) AS `cnt` FROM g5_write_ebook WHERE ((INSTR(wr_subject, '이상')) ) and (wr_num between -81 and (-81 + 10000));
SELECT * FROM g5_write_ebook WHERE ((INSTR(wr_subject, '이상')) ) and (wr_num between -81 and (-81 + 10000));

모두 1개 나옵니다.

'날개 이상', '날개(이상).epub' 값이 실제로는

thumb-3419630329_1705814535.5534_730x81.png이상하게 저장되어 있습니다.

희안하게도 화면에 보이는 것은 모아쓰기가 되어 있네요. ㅠㅠ

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

회원로그인

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