Ada lebih banyak opsi daripada hanya dua yang Anda sebutkan. Ada:
- Daftar Ketetanggaan ("parent_id" yang digunakan hampir semua orang)
- Set Bersarang
- Pencacahan Jalur
- Tabel Penutupan (alias Hubungan Ketetanggaan)
Lihat jawaban saya untuk "Apa cara paling efisien/elegan untuk mengurai tabel datar menjadi pohon? "
Atau beberapa buku:
- "Trees and Hierarchies in SQL for Smarties " oleh Joe Celko.
- "Pola Desain SQL " oleh Vadim Tropashko.