sql >> Databasteknik >  >> RDS >> Mysql

min sql flera kategori-underkategori-underkategori

Strukturera din tabell så här:

Id   Category    ParentId
1     Jewelry     NULL
2     Body          1
3     nose ring     2
4     arm ring      2
5     ear ring      2
- 
-

Detta kallas Self-Referencing Table, dvs ParentId kolumner innehåller antingen NULL eller värde från Id kolumn i samma tabell.

så närhelst du måste känna till alla direkta subcategories av en given category , skapar du helt enkelt en fråga som :

   Select * from CategoryMaster where ParentId = 2;

Om du gör detta får du alla underkategorier för underkategorin Body .

Det bästa med denna datastruktur är att du kan ha n-nivåer av underkategorier för en given underkategori och samma enstaka tabell med 3 kolumner (minst) räcker.



  1. Vilken tidszonsinformation lagrar PostgreSQL?

  2. Hur man tar bort rader i tabeller som innehåller främmande nycklar till andra tabeller

  3. Skicka array i Mysql-fråga med nodejs

  4. Är mysql_real_escape_string() trasig?