我有一个 postgres 数据库,其中大多数表都有一个“valid_time”列,表示该行中的数据打算表示的时间和一个“analysis_time”列,表示进行估计的时间(这可能是相同的或稍后的)时间比测量情况下的有效时间或预测情况下的更早时间)。通常每个有效时间都有多个分析时间,对应于不同的测量(如果稍等一下,给定时间有更多数据可用,因此分析更好,但测量不太及时)和不同提前期的预测。
我正在使用 SQLalchemy 在 Python 中访问这个数据库。
我想做的是能够提取指定列的最近 N 个唯一日期时间的所有行。例如,我可能想要 3 个最近的唯一有效时间,但这通常会超过 3 行,因为这 3 个有效时间中的每一个都会有多个分析时间。
我是关系数据库的新手。从某种意义上说,这个问题有两个部分;如何在裸 SQL 中实现这一点,然后如何将其转换为 SQLalchemy ORM?