Veritabanı tasarımını doğru yaparsan bu 3 duruma da gerek kalmaz.

Hiyerarşi yani,


ID, ust_kategori_ID, kategori_adi

Örnek:

1, null, Matematik
2, null, Türkçe
3, null, Coğrafya
4, 1, Kümeler
5, 1, Fonksiyonlar
6, 4, Boş Küme
7, 2, Zamir
8, 3, Bölgeler
9, 8, Akdeniz
10, 3, Karadeniz
11, null, Sosyal Bilgiler


gibi sınırsız alt üst ilişkisi kurulabilir.