저는 하루 종일이 문제에 대한 내 머리를 긁어 왔고 간단합니다. SQL 결합을 시도하고 사용하려고 시도한 것은 이번이 처음 이었지만, 기본 지식을 배우는 동안 고급 기술에 좀 더 집중하고 있습니다.MySQL이 조인 테이블에 합류합니다
기본적으로 나는 자체 포럼을 만들고 있으며 두 개의 테이블이 있습니다. f_topics (스레드) 및 f_groups (포럼 또는 범주). f_topics의 topicBase와 f_groups의 groupID 사이에는 관계가 있으며, 이는 각 주제가 어느 그룹에 속하는지를 보여줍니다. 각 주제에는 topicID라는 고유 한 ID가 있고 groupID라는 그룹에 대해서도 동일합니다.
기본적으로이 모든 열을 단일 SELECT 문으로 가져 오려고합니다. 주제의 제목, 주제가 게시 된 날짜, 주제가 속한 그룹의 ID 및 해당 그룹의 이름 . 이 항목은 그룹 ID 2에있는 경우에도 내가 사용하려고했지만, 그룹은 항상 다시 1로 오는 것입니다 :
내 전체 로직이 경우이 훨씬 이해하고 있지 않은 경우$query=mysqli_query($link, "
SELECT `topicName`, `topicDate`, `groupName`, `groupID`
FROM `f_topics`
NATURAL JOIN `f_groups`
WHERE `f_topics`.`topicID`='$tid';
") or die("Failed to get topic detail E: ".mysqli_error());
var_dump(mysqli_fetch_assoc($query));
죄송합니다 완전히 틀린 경우, 대체 방법을 제안 할 수 있습니까?
읽어 주셔서 감사합니다.
대신에 "... FROM'f_groups' LEFT JOIN'f_topics' ... 대신'? –
나는 질문의 요구 사항에 따라 그렇게 믿지 않는다. – AlienWebguy
나는 주제가 한 그룹에 속하는지, 다른 방법이 아닌지에 관한 질문으로부터 모은다. 왼쪽 결합을 제안하면, 존재하지 않는 그룹에 속하거나 전혀 그룹에 속하지 않을 수도 있다고 가정하는 것입니다. 그래? –