2011-02-11 3 views
0

나는 mysql 테이블을 가지고있다. ID (autoinc), dt (datetime), 이름 (varchar) 열이 있습니다. 방문자가 방문하면 데이터베이스에 이름을 입력 할 수 있습니다. 어떤 때는 방문자가 없습니다.방문자 일의 mysql 수집?

나는 그들의 방문자가 적어도 1 인 모든 날의 php 목록을 만드는 방법이 있는지 찾으려고합니다.

아이디어가 있으십니까? 이것은 다른 회선에서 각 날짜를 인쇄 할

$result = mysql_query("select distinct date(dt) from table1"); 
while($row = mysql_fetch_array($result)){ 
    echo $row[0] . "\n"; 
} 

:

+0

이 역설은 아닙니다. 방문자가 없으면 항목이 없으므로 검색 할 항목이 없습니다. –

+0

네, 그게 문제입니다. – David19801

답변

3
Select distinct date(dt) from table1 

그럼, PHP에서 당신은 같은 것을 할 것입니다.

데이터가 테이블에 기록 된 고유 날짜 목록을 제공해야합니다.

대신 일의) 날짜를 (사용하도록 업데이트() * 이 *

+0

'DAY()'는 날짜를 반환하지 않으며, 일 수 (예 : 11)를 반환합니다. – netcoder

+0

MySQL은 매우 짧고 달콤합니다. 승리! – David19801

+0

편집하지 못하게하지만 근본적으로 끝입니다.) while 루프에서 누락되었습니다 ... – David19801

0

는 그 날짜를 추출하려면 누락 된 괄호를 해결하기 위해 업데이트되었습니다.

SELECT DATE_FORMAT(dt, '%Y-%m-%d') AS the_date, 
     COUNT(*) AS visitors 

    FROM table 

GROUP BY the_date 

HAVING visitors > 0;