[wp-hackers] Category Operation (Adjacency vs. Modified Preorder)
agent_eight at hotmail.com
Fri Feb 10 13:33:07 GMT 2006
> > Had anyone ever considered using a modified pre-order tree to store the
> > post categories in?
>Excuse the simpleton, but what in hay-diddly is that? Some links and/or
>examples would be helpful.
A modified preorder tree is a method of storing hierarchal data in a
database. This article provides a much better explanation than I'm capable
of ... http://www.sitepoint.com/article/hierarchical-data-database
The method requires a little more work during inserts and updates but allows
for much faster and much more flexible queries. An example ... with this
method you could extract an entire sub tree from the categories table with
only 1 query and no sub-selects (2 joins). No recursive post processing is
needed either. When retrieving posts by category, multiple sub tree's could
be excluded or included with a single query (2 joins). The path to a
category, a list of siblings, a list of children, all can be retreived with
single query, but not at the same time of course.
The multiple inclusion/exclusion of hierarchies feature is what really calls
to me. Granted, doing inclusion "and" exclusion at the same time would
require a couple queries without sub-selects.
If anyone is interested and/or thinks this might be a good addition, I've
got some prototypes I could share.
More information about the wp-hackers