SELECT count(*) as count,category.category,nlevel(category.category) AS level,
subpath(category.category,0,nlevel(category.category)-1) as parent,
category.head_title, category.cat_title, category.subcat_title FROM data, category
WHERE
data.category <@ category.category
GROUP BY category.category, category.head_title, category.cat_title, category.subcat_title
####
Table "category"
Column | Type
--------------+-------------------
head_title | character varying
cat_title | character varying
subcat_title | character varying
category | ltree
####
Table "data"
Column | Type
+----------------------------------------------
id | integer
category | ltree[]