PHP (5.2)에서 사용하고있는 다음 MySQL 쿼리가 있습니다. 나도 그것을하려는거야 방법JOIN이 작동하지 않는 쿼리를 삭제 하시겠습니까?
DELETE t1.*, t3.* FROM
forum_posts AS t1,
forum_topics AS t2,
user_points AS t3
WHERE t1.topic_id = t2.topic_id
AND t2.deleted = 1
AND t1.post_id = t3.id
AND t3.type = 'post'
AND t1.post_author = t3.profile_author
그러나이 작동하지 않는 것 (! 아무 일도 발생하지 않음), 설명해 보자 : 나는 쿼리를 의도 무엇
이 일을 할 것이 forum_posts
테이블의 모든 행을 삭제하는 것입니다/또는 (심지어 행이 존재하는지에 따라 달라 지므로 "and and or"라고 말합니다.) user_points
테이블의 모든 행을 삭제하십시오. [게시물이 작성된 주제가 삭제 된 경우 (혼란을 피하십시오. 실제로는 "숨김"이며, 우리는 1
과 같음을 확인하여 이것을 결정합니다]).
쿼리 구조가 자체적으로 설명하기를 바랍니다. topic_id
은 주로 JOIN
에 사용됩니다.
쿼리가 잘 실행됩니다 (MySQL 또는 PHP 오류가 없으므로 구문이 좋을 것이라고 생각합니다), 삭제 된 기존의 DB 및 theres 항목을 확인했습니다 (열은 1
으로 설정 됨) 그리고 그것들은 그 주제들에 대해서도 존재합니다 (그래서 아무런 데이터도 없다).
모든 답장을 감사하십시오.
'DELETE'을'SELECT'로 바꾸고 삭제할 행이 있는지보십시오. – Vache
@Vache, 방금 시도했는데 아무 것도 반환하지 않고 user_points 부분을 제거해 보았습니다. 게시물에 대한 행을 반환했습니다. 그 점이 존재하지 않는다고 생각합니다. 문제가 있다고 생각합니다. 쿼리 내에 존재하는지 확인하려면? – newbtophp