제목과 같습니다.
wtoo테이블중 mo란 컬럼의 값이 1인 데이터중 가장 최근에 입력된 3개만을 추출하여
con이란 컬럼이의 값이 ''인 데이터의 갯수를 구하려구 합니다...
당연히 갯수는 0부터 3까지의 값이 나오겠지요...
이걸 수행 할 수 있는 쿼리는 없을까요?
select count(*) as cnt from wtoo where mo='1' AND con='' order by regdate DESC limit 0,3;
select count(*) as cnt from wtoo where mo='1' AND con='' order by regdate DESC limit 3;
이 쿼리로는 cnt가 23이라고 나오는 군요... ㅠㅠ
count()를 쓰면 limit하고는 상관없이 해당 레코드를 모두 읽어 그 수를 구하는 것인가요?
일단 가장 최근의 값 3개중에 mo='1'인 값을 구해서 그중에 con=''인 레코드의 갯수를 구해야하는데
쿼리 한줄로 이걸 해결할 방법은 없는지 궁금합니다...
자세하고 친절한 답변 부탁드립니다. ^^
|