0
3 개의 테이블 : 링크, 키워드 및 키워드 _ 링크가 있습니다. 링크는 여러 키워드를 가질 수 있으며 여러 링크는 동일한 키워드를 가질 수 있습니다. keywords_links
은 links
과 keywords
에 참여하는 데 사용됩니다. 다음 쿼리를 실행하면 여러 키워드가 일치하므로 동일한 링크의 여러 행이 반환됩니다. 고유 한 행을 반환하도록이 쿼리를 수정하려면 어떻게해야합니까?MySQL에서 INNER JOIN을 사용할 때 어떻게 고유 한 행을 반환 할 수 있습니까?
SELECT links . *
FROM `links`
INNER JOIN keywords_links ON keywords_links.link_id = id
INNER JOIN keywords ON keywords.id = keywords_links.keyword_id
WHERE keywords.keyword
IN (
'php', 'sql', 'html', 'css'
)
내부 조인으로이 기능을 시도한 적이 없지만 작동하지 않는 이유는 없습니다. [여기] (http://www.w3schools.com/sql/sql_distinct.asp)는'DISTINCT' 기능이 어떻게 작동하는지에 대한 추가 문서입니다. – acattle