Quantcast
Channel: Active questions tagged cte - Database Administrators Stack Exchange
Viewing all articles
Browse latest Browse all 207

best practice for dependency roots

$
0
0

When a database has a dependency table showing the parent-child relationship of items...I've mostly seen guides that assume the top level parent has a "parent id" field which is either zero or null, and this is the indicator that this item is a top level item aka the root of the dependency tree.

This is what I'm seeing used in a recursive CTE as the anchor member.

However, it seems that requiring this zero or null field might be unnecessary, since the parent item can be deduced by seeing that a given item number appears in the dependency table as a "parent id" but never as a "child id".

Example of deducing item 300 as the root parent of the 300-330 tree:

Dependency table| Parent_id | child_id ||--------- | ----------|| 300      | 310       || 310      | 320       |      | 320      | 330       |

Example of the (far more common in examples) use of parent_id = 0 to define the root parent:

Dependency table

| Parent_id | child_id || -------- | -------------- || 0        | 300            || 300      | 310            || 310      | 320            |      | 320      | 330            |

so the question here is one of "best practices". If I have the ability to design a dependency table from the ground up, is there a reason to go with on structure vs the other?


Viewing all articles
Browse latest Browse all 207

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>