자동 메뉴를 만들려고 하는데 쿼리문에서 오류가 나네요 ㅜㅜ

· 13년 전 · 1498 · 5
오류가 나는곳의 주소를 알려주시면 더 빠르고 정확하게 답변 받을 수 있습니다.

오류 주소 :

쿼리문은

$sql = "select * from $g4[group_table] where gr_id NOT LIKE '%NV_%'";

이렇게 사용하고 있습니다.
뒤에 Where 절을 전부 지우면
정상 출력이 되서 앞부분 까지는 문제 없는거 같은데

오류가 나는부분을 보니뒤에
'%NV_%' 이부분이네요..

그룹중에서 NV_ 가 ID에 들어간부분을 제외하고 출력을 하고싶은데 ㅜㅜ
대체 뭐가 잘못된건지 모르겠어요...
|

댓글 5개

제 계정에서 테스트해본 결과 잘나옵니다.

$sql = "select * from $g4[group_table] where gr_id NOT LIKE '%about%'";
$r = sql_query($sql);
for ($i=0; $row = sql_fetch_array($r); $i++) {
print_r2($row);
}

print_r2($row); 처럼 결과값 한번 찍어보세요
DBMS 중 MYSQL 에서 언더바(_)는 예약 상수중에 하나 입니다.
언더바를 빼고 하시거나, 라이크문 뒤에 언더바를 이스케이프 처리해 주시기 바랍니다.
아, 참고로 mysql 에서 언더바를 라이크문에서 사용시에는 하나의 임의문자 값으로 인식됩니다.(예약 상수)
그렇군요~ 덕분에 하나 배우고 갑니다~^^
그누보드 소스를 하나씩 살펴보면 도움이 됩니다
이런 친절한 설명이 들어있는 문구가 있습니다
// LIKE 보다 INSTR 속도가 빠름

따라서 이게 좋겠죠. 간단 하기도 하고..
NOT INSTR(gr_id, 'NV_')
와... 답변들 정말감사합니다.
좋은하루들 되세요...

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기
🐛 버그신고