mysql 쿼리 질의 드립니다.
관련링크
http://mysql
66회 연결
본문
1. 분류된 회원등급(0, 1, 2, 10) 제한
2. 최근 접속일 15년 이전-(0000-00-00) *0000-00-00 값은 제외
3. 07년 2월 이전 가입자
SELECT mb_no, mb_id, mb_name, mb_open_date, mb_datetime FROM g5_member WHERE mb_open_date not in('0000-00-00') and DATE_FORMAT(mb_open_date, '%Y') < '2015' and DATE_FORMAT(mb_datetime, '%Y-%m') > '2007-02' and mb_level not in('0','1','2','10')
위에 쿼리에 오류가 있어서 결과 값이 나오지 않는것 같은데
어떻게 처리를 해야할까요?
답변 4
접속일 체크가 틀렸습니다.
SELECT mb_no, mb_id, mb_name, mb_open_date, mb_datetime FROM g5_member WHERE mb_open_date not in('0000-00-00') and DATE_FORMAT(mb_open_date, '%Y') < '2015' and DATE_FORMAT(mb_datetime, '%Y-%m') > '2007-02' and mb_level not in('0','1','2','10')
를
SELECT mb_no, mb_id, mb_name, mb_open_date, mb_datetime FROM g5_member WHERE mb_open_date not in('0000-00-00') and DATE_FORMAT(mb_today_login, '%Y') < '2015' and DATE_FORMAT(mb_open_date, '%Y-%m') > '2007-02' and mb_level not in('0','1','2','10')
로 변경해보세요
조건문이 조금 이상한부분이 있는데
2015년 이전 접속자 + 2017-02 이전 가입자..
가입이 더 먼저여야 하는게 아닌지 궁금합니다.
아무튼 조건에서 mb_open_date 는 가입일자
최종접속일시는 mb_today_login 입니다.
!-->!-->
테스트 해봤는데 오류가 없습니다.
해당 조건에 맞는 데이터가 있는지 확인해보시기 바랍니다.
일단 이상은없지만
1,2,3 번 나눠서 데이터가나오는지 확인하시고
값이나오면
1,2 쪼개서 해보시고 2,3 쪼개서 해보시고 합쳐서 해보세요 그럼되실꺼에요
많은 조언들 감사합니다.
답변을 작성하시기 전에 로그인 해주세요.