2013-07-12 1 views
2

SQL 관계형 데이터베이스에 가변 개수의 태그를 붙여서 문장을 저장할 수 있습니다.각 정보와 관련된 가변 개수의 태그가있을 때 관계형 데이터베이스에 태그를 저장하는 좋은 방법

'farewell', 'goodbye', 'amiable' 

문장 태그의 수는 달라질 수 있습니다 : 그래서,

'As the sun sets slowly in the west, we bid you a fine farewell.' 

다음 태그 태그와 같은 문장이있을 수 있습니다. 여기에 주어진 예제에는 세 개의 태그가 있습니다.

관계형 데이터베이스에서 이러한 유형의 정보를 체계적으로 구성하는 방법은 무엇입니까? 어떤 테이블 등이 합리적일까요?

감사합니다.

+2

가능한 중복 태그를 찾으려면 [데이터베이스에 태그를 저장하는 가장 효율적인 방법은 무엇입니까? (http://stackoverflow.com/questions/334183/what-is 데이터베이스에서 가장 효율적인 방법으로 저장 태그) –

답변

7

당신은 다 대다 관계입니다. 세 개의 테이블 (sentence, tagsentence_tag)을 만듭니다. sentencetag 테이블에는 각각 기본 키 id 필드가 있고 sentence_tag 필드에는 sentence_id 필드와 tag_id 필드가 있습니다. , id = $sID와 문장에 대한의

SELECT tag_name FROM tags WHERE id IN (SELECT tag_id FROM sentence_tag WHERE sentence_id = $sID); 
+0

우수. 도와 주셔서 대단히 감사합니다. – d3pd

관련 문제