많은 스레드가 있지만 작동 할 솔루션을 찾을 수없는 것 같습니다. 다음은 내가 가진 쿼리입니다.mysql 쿼리 - 여러 (5) 열에 중복 된 것을 표시하지 않습니까?
$sql = "SELECT DISTINCT `People`,`People2`,`People3`,`People4`,`People5`
FROM `album1`
WHERE `People` != '' ORDER BY `People`";
여러 문제가 있습니다. 첫째, 중복이 계속 표시됩니다. 또한 여러 열에 WHERE
하는 방법을 알아낼 수 없습니다 ...
테이블은 다음과 같이 보입니다.
People | People2 | People3 | People4 | People5
--------+----------+---------+---------+--------
Alex | Frank | | | John
Alex | | John | Frank |
사진을 "태그 지정"하는 데 본질적으로 사용됩니다. 사람의 이름이 5 인 입력 필드에 입력 될 수 있기 때문에 이름이 모든 곳에서 끝납니다.
내가하고있는 모든 작업은 이름을 한 번 표시하려고하는 것입니다. People
! = ''은 (는) 빈 셀을 표시하지 않습니다.
아이디어가 있으십니까? 추가 정보가 필요한지 알려주십시오.
앨범 테이블의 주요 필드는 무엇입니까? – Sparky
다음은 스크린 샷입니다. http://cl.ly/2s3h0P1I443n2A0R1V1T/Image%202012-01-20%20at%203.32.53%20PM.png – elzi
위 표의 데이터를 정규화하지 않은 이유가 있습니까? 한 가지 제안은 되풀이되는 "People"열을 자신의 테이블로 이동 한 다음 새로운 People 테이블에서 위의이 테이블 쇼까지 일대 다 관계를 만드는 것입니다. 이렇게하면 쿼리가 쉬워지고 더 이상 행당 "인원수"가 5 명으로 제한되지 않습니다. – user1231231412