Ben veriler bu modellerin kategorilerden bir hiyerarşi bir dizi var. Bir kök kategori üst düzey kategoriler kümesi içerir. Her üst düzey kategori alt kategoriler kümesi içerir.
Her alt kategori kuruluşların bir dizi var. Belirli bir organizasyon birden fazla alt kategoriye görünebilir.
Bu hiyerarşi yaprak düğümleri kuruluşlardır. Bir kuruluşun potansiyel çoklu alt kategoride görünebilir.
Veriler üç SQL tabloları saklanır:
organizations
organization_id organization_name
1 Org A
2 Org B
3 Org C
4 Org D
5 Org E
6 Org F
categories
category_id parent_id category_name
0 NULL Top Level Category
1 0 First Category
2 0 Second Category
3 1 Sub Category A
4 1 Sub Category B
5 1 Sub Category C
6 2 Sub Category D
organizations_categories -- Maps organizations to sub_categories
organization_id category_id
1 3
2 3
2 6
3 4
4 4
5 4
6 5
6 4
7 6
8 6
Ben belirli bir kategori veya alt kategori altındaki tüm eşsiz kuruluşların bir listesini seçmek için muktedir istiyorum.
Ben bunu yapıyorum yolu şu anda birinci alt kategoriler talep edildiği sergiyi ve sonra kodu her sub_category döngü ve tüm kuruluşların bu kategoriye eşleştirilmiş almak için bir seçme kullanılmasını içermektedir. Her select sonuçları bir diziye eklenir. Bir kuruluş birden fazla alt kategoriye göründüğünde Bu dizi çiftleri içerir.
Ben verimli hiyerarşisinde kategorilerden birine bir kimlik verilen farklı kuruluşların bir listesini seçebileceğiniz bir sorgu ile bu kludge değiştirmek isterdim.
PHP ve MySQL kullanarak bu çözümü devloping duyuyorum.
Zaman ve önerileriniz için teşekkür ederiz.