SQL: Strategi Berkesan untuk Penyimpanan dan Pengambilan Data Hierarki
Mengurus data hierarki dengan cekap dalam pangkalan data SQL ialah cabaran biasa. Artikel ini meneroka dua kaedah popular: Model Senarai Adjacency dan Model Set Bersarang.
Model Senarai Bersebelahan: Pendekatan Mudah
Model ini menggunakan satu jadual dengan lajur ini:
ID
: Pengecam unik untuk setiap nod.Parent_ID
: ID nod induk.Attributes
: Data tambahan yang dikaitkan dengan nod.Nod kanak-kanak diwakili sebagai baris yang berasingan, dipautkan kepada induknya melalui Parent_ID
. Contoh:
ID | Parent_ID | Category |
---|---|---|
1 | NULL | Clothing |
2 | 1 | Shirts |
3 | 2 | T-shirts |
4 | 1 | Pants |
Model Set Bersarang: Prestasi Dipertingkat
Model Set Bersarang menggabungkan lajur lft
dan rgt
untuk menentukan sempadan setiap subpokok nod.
ID | Parent_ID | lft | rgt | Attributes |
---|---|---|---|---|
1 | NULL | 1 | 14 | Clothing |
2 | 1 | 2 | 5 | Shirts |
3 | 2 | 3 | 4 | T-shirts |
4 | 1 | 6 | 13 | Pants |
Kanak-kanak nod berada dalam julat lft
dan rgt
nya.
Penerokaan Selanjutnya
Di luar model teras ini, banyak teknik lain wujud untuk mengendalikan data hierarki dalam SQL. Terokai sumber ini untuk pemahaman yang lebih komprehensif:
Kesimpulan
Pilihan kaedah bergantung pada keperluan aplikasi khusus anda dan ciri data. Model ini menyediakan asas yang kukuh untuk pengurusan data hierarki yang berkesan dalam SQL.
Atas ialah kandungan terperinci Bagaimana untuk Menyimpan dan Menyoal Data Hierarki dengan Cekap dalam SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!