나는 이것을 과소 평가했을지 모르지만 "지역", "군", "도시"및 "장소"사이에 관계가 있다고 생각합니다. "장소"에 속하는 항목도 도시에 속해야합니다. 카운티 및 지역.
당신이 제공 한 디자인 모두에서 이것을 해결할 수 있습니다. 그러나 상당한 양의 추가 로직이 필요합니다. 첫 번째 솔루션에서는 레코드를 삽입 할 때마다 "왼쪽에서 오른쪽으로"위치를 채 웁니다. "장소"만있는 레코드는 유효하지 않습니다.
두 번째 해결 방법에서는 관련된 모든 행을 채워야합니다. Chelsea의 항목에는 London, Middlesex 및 South East England에 대한 레코드가 있어야합니다. 또 다른 방법이있다
...
Table: location
ID Name Parent
------------------------
1 South East England null
2 Middlesex 1
3 London 2
4 Chelsea 3
5 Kent 1
6 Canterbury 5
Table: item
Id name
-----------------
1 Posh Boy
2 Cricket ground
3 Rain
Table: item_location
ItemID LocationID
--------------------
1 4 //Posh boy in Chelsea
2 2 // Cricket ground in Middlesex
3 1 // Rain in the South East of England.
각 지역은 지역, 카운티, 도시이고, 일을 여러 위치가 있습니까, 배치? 또는 항목과 논리적으로 다른 항목간에 연결된 "링크"가 있습니까? – willem
테이블에 여분의 열을 추가/제거 할 수 있기 때문에 제 2의 솔루션을 선택할 수 있습니다. 예를 들어 도시 테이블 \에 포스트 코드/전화 번호를 국가 테이블 등에 추가 할 수 있습니다. – Gntem
@willem 것들은 여러 위치를 가질 수 있습니다. 그리고 저는 그 지역을 활성화하지 않고 "도시"를 선택할 수 있습니다. 따라서 내가 지역을 검색하면 그 도시가 그 지역과 연결되어 있다는 사실을 근거로 그 일이 나올 것입니다. 그러나 그 일은 단지 그 카운티 안에있는 도시에만 속합니다. (도움이 될지 확실하지 않음) – Alisso