2016-12-13 1 views
-1

내 데이터베이스에서 고유 한 값을 나타내는 데 몇 가지 문제가 있습니다. 예를 들어,이 매우 간단한 테스트 테이블을 가지고 : 당신이 태그 열라는 소개에 중복 값이 ​​있음을 알 수데이터베이스에서 유일한 값 선택

enter image description here

.

UNIQUE 태그를 모두 표시하고 싶습니다. DISTINCT 명령으로 시도했지만 잘못 처리했을 수 있습니다.

이 내 실제 쿼리입니다 :

SELECT DISTINCT tags FROM blog 

그러나 이것은 나에게 모든 태그를 제공합니다.
도움을 주시면 감사하겠습니다.

+8

태그를 쉼표로 구분 된 목록에 저장하지 않도록 데이터 구조를 수정하십시오. 대신에,'blogId'와'tag' 당 하나의 행을 가진 테이블을 사용하십시오. –

+0

^나는 단지 그 효과에 대해서 말할 것입니다. –

+0

동의 함, 또한 - 이것이 mysql이라고 가정합니다. 그렇다면 해당 DBMS에 질문을 태그 할 수 있습니까? 그것은 당신의 현재 문제에 대한 해결책을 찾는데 도움이 될 것입니다 ... 당신의'blog' 테이블을 재 설계하는 것 말고는. – gmiley

답변

0

이미지에 따르면 테이블의 행에 "인트로"가 포함되어 있고 다른 하나에는 "인트로, PHP, 경고, 오류"가 포함되어 있습니다. 그렇다면 동일한 것은 아닙니다.

각 값에 대해 행을 사용하려고 생각합니다.

블로그 (태그)에 삽입 값 ("소개"), 값 ("소개" 는 분리 된 문장에서 각각의 값을 삽입, 또는 동일하지만 사용하여 다른 행에 뭔가 같이해야 그것을 할), values ​​("php")

+1

감사합니다. 의견에 언급 된대로 데이터 구조를 재구성 할 것입니다. – Gekyzo

관련 문제