Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有一个带有这个表的 MySQL 5.1 DB(释义)......
contracts --------- id parent_id end_date
所以合约可以通过 建立父子关系parent_id,并且可以有多层嵌套。
parent_id
给定一些合同,id比如说1,我怎么能写一个查询来找到end_date它和它的后代中的最后一个?
id
end_date
id(用那个来获得合同的 s也很棒end_date。)
SQL 中的递归可能很难实现——如果你也得到一个循环关系会发生什么?
我会考虑将关系分解成一个单独的表,明确列出它们。
例如
contact_id super_id relationship 1 10 Parent 1 20 Grandparent 10 20 Parent
等等。让它们保持最新是一项工作,但值得付出努力。与所有父母签订合同也是一件简单的事情