2010-03-29 10 views

답변

1

무엇이 독특합니까? 스키마에 대한 정보가 조금 더 필요합니다.

어쨌든 date_added 열을 기본값으로 CURRENT_TIMESTAMP에 쉽게 추가 할 수 있습니다. 그런 다음 date_added을 내림차순으로 정렬하여 추가 된 항목을 찾을 수 있습니다.

고유 한 결과 만 가져 오는 것과 관련하여 ... 고유 한 행을 다시 삽입하면 안됩니다. 따라서 올바르게 수행하지 않으면 date_added은 새로운 항목 만 반영합니다.

먼저 테이블에 date_added 열을 추가 : 변경하지 않아도

ALTER TABLE your_table ADD COLUMN date_added TIMESTAMP DEFAULT CURRENT_TIMESTAMP 

DEFAULT CURRENT_TIMESTAMP는 자동으로 현재 날짜를 사용하여 처리됩니다 여기

은 코드 샘플입니다 기존 INSERT 코드에 대해 대신에이 칼럼으로

, 당신은 지금 쉽게 특정 날짜에 추가 된 레코드를 확인할 수 있습니다

-- Rows for March 29, 2010 
SELECT DISTINCT * FROM your_table WHERE DATE(`date_added`) = '2010-03-29'; 

DISTINCT는 당신이 해당 날짜에 추가 된 고유의 행을 참조 할 것.

SELECT DISTINCT * FROM your_table WHERE DATE(`date_added`) = CURRENT_DATE; 

당신이 기억해야 할 유일한 것은 열이 존재하지 않았기 때문에 기존 레코드는, 0의 일을하는 것입니다 :

는 여기에 "오늘의 기록"끌어 또 다른 편리한 쿼리입니다 그들의 삽입 시간. 당신은 타임 스탬프와 함께 새 행을 삽입하는 경우

+0

감사 매트 같은 것을 할 수 있습니다. 데이터베이스에 하나의 열만 있으므로 각 레코드가 고유합니다. – billy

+0

@ 빌리 그때는 충분히 간단합니다. 코드 샘플에 대한 편집을 참조하십시오. – Matt

0

, 당신은이

// Insert CSV into the DB with this timestamp 
$todays_insert_time = time(); 

... 

// Get unique rows from today 
$unique_rows = mysql_query("SELECT DISTINCT `whatever_column_makes_the_row_unique` FROM `some_table` WHERE `insert_time`=" . $todays_insert_time); 
관련 문제