sql 카운트가 에러? 가 납니다.
본문
$sql = "
select
mb_id,
mb_1,
mb_name,
mb_level,
count(*) as cnt
from {$g5['member_table']}
where mb_1 = '{$stx1}'
";
count(*) as cnt 를 빼면 정상적인 값이 나오는데
count(*) as cnt 를 넣으면 값이 1개뿐이 안나오네요
개수를 세고 싶은데 count를 넣으면 값이 한개만 나옵니다.
!-->답변 2
$sql = " select mb_id, mb_1, mb_name, mb_level, count(*) as cnt from {$g5['member_table']} where mb_1 = '{$stx1}' ";
<--- count를 쓰면 레코드를 여러개 가져오지않습니다
이 경우 mb_id, mb_1, mb_name, mb_level 이런 필드 추출은 아무 의미가 없습니다
그냥 테이블에 등록 된 순서에서 조건에 맞는 맨 앞의 것을 가져옵니다
위의 쿼리문은 $row=sql_fetch($sql); 하면 $row['cnt'] = 10 하나만 나와야 됩니다
조건이 $stx1인 것을 count 하는데 더 이상 무엇이 필요한가요?
카운트와 조건에 맞는 레코드 전체를 구하려면 다음처럼 합니다
$sql = " select mb_id, mb_1, mb_name, mb_level from {$g5['member_table']} where mb_1 = '{$stx1}' ";
$qq =sql_query($sql);
$cnt = sql_num_rows($qq); //전체 갯수
while($row=sql_fetch($qq)) print_r($row);
!-->
갯수(회원명수)를 세면 당연히 숫자 하나만 나와야 하는 거 아닌가요?
어떤 갯수를 원하시는 건가요?
답변을 작성하시기 전에 로그인 해주세요.