sql >> データベース >  >> RDS >> Mysql

私のSQLの複数のカテゴリ-サブカテゴリ-サブカテゴリ

    次のようにテーブルを構成します:

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

    これは自己参照テーブルと呼ばれます。つまり、ParentId 列にはNULLのいずれかが含まれます またはIdからの値 同じテーブルの列。

    したがって、すべての直接のsubcategoriesを知る必要があるときはいつでも 特定のcategoryの 、次のようなクエリを作成するだけです:

       Select * from CategoryMaster where ParentId = 2;
    

    これを行うと、サブカテゴリBodyのすべてのサブカテゴリが取得されます 。

    さて、このデータ構造の最良の部分は、任意のサブカテゴリに対してnレベルのサブカテゴリを持つことができ、(少なくとも)3列の同じ単一のテーブルで十分です。



    1. Where句のSQLRow_Number()関数

    2. mavenstartpostgresサーバー

    3. SQLで整数の最大値を取得するにはどうすればよいですか?

    4. 転送用のデータベースのエクスポート