gpt4 book ai didi

mysql - 如何在递归情况下找到某个列的 MAX()?

转载 作者:行者123 更新时间:2023-11-29 03:04:57 24 4
gpt4 key购买 nike

我有一个带有此表的 MySQL 5.1 数据库(释义)...

contracts
---------
id
parent_id
end_date

因此合约可以通过 parent_id 建立父子关系,并且可以有多层嵌套。

给定一个 id 比方说 1 的契约(Contract),我如何编写一个查询来找到其中的最后一个 end_date 及其后代?

(如果能获得具有该 end_date 的契约(Contract)的 id 也很好。)

最佳答案

SQL 中的递归可能难以实现 - 如果您也获得循环关系会怎样?

我会考虑将这些关系分解成一个单独的表,明确列出所有这些关系。

例如

 contact_id     super_id     relationship
1 10 Parent
1 20 Grandparent
10 20 Parent

等等。使它们保持最新状态需要做一些工作,但值得付出努力。给它所有的父类加入一个契约也是简单的事情

关于mysql - 如何在递归情况下找到某个列的 MAX()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17226213/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com