ショッピング カートの製品カテゴリ ツリーは、ネストされたセット形式で次のように定義されます。
create table artomlii (
artomaliik serial primary key,
treeparent integer references artomlii, -- parent or null if root node
categoryname char(50) );
ツリーの最大深度は 5 です。
ツリー内の製品は次のように定義されます
create table artomadu (
artomaliik integer primary key references artomlii not null,
productid char(20) primary key not null
)
カートのホームページでは、クエリを使用してルート カテゴリが表示されます
select * from artomlii where treeparent is null
ログインしているユーザーによっては、一部のルート カテゴリが空で、サブカテゴリに製品が含まれていない場合があります。このカスタム フィルターは artomadu テーブルに適用されます。
このクエリでは、空のルート カテゴリも表示されます。子カテゴリのいずれかに少なくとも 1 つの製品製品があるルート カテゴリのみが表示されるように、これを修正するにはどうすればよいですか?
WITH RECURSIVE または他のアイデアを使用できますか?