2012-05-11 5 views
-1

다른 쿼리에 게시 했으므로 필자는 짹짹이 포함 된 MYSQL 테이블을 가지고 PHP를 사용하여 채 웁니다. 중복 된 게시물이 없도록 업데이트하기 전에 테이블의 마지막 ID를 확인하기 때문에 retweet_count를 확인하려고 할 때 실패합니다 (이미 저장된 트윗을 무시합니다).테이블 2를 테이블 1로 업데이트 한 다음 테이블 2를 자릅니다.

UPDATE table1 JOIN table2 ON table2.col1 = table1.col1 SET table1.col2 = table2.col2; 

가 첫 번째 테이블을 업데이트

TRUNCATE TABLE table2; 

다음 :

내 해결책은 다음 두 SQL 명령을 실행 한 후 또한 두 번째 테이블을 채우는 같은 스크립트를 사용하는 것입니다 그런 다음 다시 시작할 수 있도록 두 번째 줄을 비 웁니다 (삭제하지 않고 자릅니다).

질문은 PHP에서 어떻게 작성되어 JOIN 명령이 먼저 실행되고 TRUNCATE 명령이 실행될 수 있습니까? 감사합니다.

+0

[PDO] (http://us.php.net/manual/en/book.pdo.php), [mysqli] (http://us.php.net/manual)를 선택하십시오. /en/book.mysqli.php) – webbiedave

답변

0

프로덕션 시스템에서 중복 데이터를 저장하고 정기적으로 잘라내기를 사용하여 정리하는 것이 좋습니다.

대신 자동 커밋을 끄고 START TRANSACTION, COMMIT 및 선택적으로 ROLL BACK (http://dev.mysql.com/doc/refman/5.1/en/commit)을 사용하는 것이 좋습니다. .html).

한 번에 여러 가지 일을하는 작업 단위를 만들 수 있으므로 제안한 것에 의존 할 필요가 없습니다.

관련 문제