2011-05-11 3 views
1

90 일 이내에 로그인하지 않은 회원을 표시하고 싶습니다. mysql에서 사용자가 로그인 할 때마다 업데이트되는 last_access 열이 있습니다. 따라서이 열에서 검사를 수행 할 수 있다고 생각합니다. 열 형식은 다음과 같습니다. date("Y/m/d : H:i:s", time()) (2011/05/10 : 21:42:33)php sql 비활성 사용자 확인

사용할 적절한 SQL 쿼리는 무엇입니까?

+6

왜 비표준 날짜 형식을 사용하고 있습니까? INT 열 또는 DATETIME 열에 UNIX 시간 소인을 사용해야합니다. – ThiefMaster

+0

이 값은 어떤 유형의 필드에 저장됩니까? –

+0

* 가독성을 위해 varchar 열에 날짜를 저장한다고 말하지 마십시오. –

답변

1
SELECT username 
FROM users 
WHERE DATEDIFF(NOW(),last_access)>90 
+0

이것은'last_access'가 적절한 날짜/시간 형식을 가진 열이라고 가정합니다. 그렇지 않은 경우, @Zero가 실제로 문자열을 사용하고 있다면 권장합니다. 대안을 구현하는 대신 열 유형을 수정하십시오. –

+0

전적으로 동의합니다. – garnertb

1
SELECT columns 
FROM table 
WHERE last_access < CURRENT_TIMESTAMP - INTERVAL 90 DAY