Sql 仅获取特定日期后的即时版本的条件查询

Sql 仅获取特定日期后的即时版本的条件查询,sql,hibernate,jpa,Sql,Hibernate,Jpa,我有一个产品表。每种产品都有多个带有显示开始日期的版本。如果我要提供一个日期(比如说toady),我需要获得与该日期最近的显示开始日期的版本。如何创建一个hibernate条件查询来获得示例中的以下结果。 样本数据和输出 产品 产品id |版本|显示开始日期 2021年1月1日1000 | 5月 2021年2月2日上午10时 2021年3月3日上午10时 2021年4月4日上午10时 1001 | 1 | 2021年5月4日 1001 | 2 | 2021年5月3日 1001年| 3年| 202

我有一个产品表。每种产品都有多个带有显示开始日期的版本。如果我要提供一个日期(比如说toady),我需要获得与该日期最近的显示开始日期的版本。如何创建一个hibernate条件查询来获得示例中的以下结果。 样本数据和输出

产品

产品id |版本|显示开始日期

2021年1月1日1000 | 5月

2021年2月2日上午10时

2021年3月3日上午10时

2021年4月4日上午10时

1001 | 1 | 2021年5月4日

1001 | 2 | 2021年5月3日

1001年| 3年| 2021年2月2日

1001年4月至2021年5月1日

1002年5月1日至2021年5月5日

2021年6月6日至5月2日

1002年5月4日至2021年5月3日

1003年4月至2021年5月9日

查询的预期样本输出。

假设今天是2021年4月30日

产品id |版本|显示开始日期

2021年1月1日1000 | 5月

1001年4月至2021年5月1日

1002年5月4日至2021年5月3日

假设今天是2021年5月2日

产品id |版本|显示开始日期

2021年3月3日上午10时

1001 | 2 | 2021年5月3日

1002年5月4日至2021年5月3日

假设今天是2021年5月4日

产品id |版本|显示开始日期

1002年5月1日至2021年5月5日

假设今天是2021年5月8日

产品id |版本|显示开始日期

1003年4月至2021年5月9日

假设今天是2021年5月10日


无结果

您应该先发布您正在使用的实体模型以及您迄今为止尝试过的实体模型。