如何在PostgreSQL中找到一个值保持相同状态的最大时差?

我正在为一个大学项目工作,这取决于我:

我有一张这样的桌子:

enter image description here

我想获得执行器处于状态的最大持续时间。例如,cool0持续18分钟。

结果表应如下所示:

NAME         COOL0   
State        False
Duration     18