У меня есть следующие настройки (Java / Hibernate / PostgreSQL):
TeamName {
id: Long;
name: String;
team: Team;
....
}
Series {
id: Long;
season: Season;
dateScheduled: Date;
}
SeriesTeam {
id: Long;
series: Series;
team: TeamName;
}
SeriesTeam {
id: Long;
team: TeamName;
}
Что я хочу сделать, это сделать выбор из предыдущих n серий (скажем, 10) или следующей серии из текущейДата.Вот что у меня есть на данный момент:
select s.* from series s
inner join series_teams st on st.series_id = s.id
inner join team_names tn on tn.id = st.team_name_id
where tn.id in (:teamIds) and s.date_scheduled < CURRENT_DATE
order by s.date_scheduled desc
Но это принесет мне всю предыдущую серию для всех команд, и мне придется использовать Java, чтобы выбрать то, что я хочу.Я хочу?Спасибо!
РЕДАКТИРОВАТЬ: Например, скажем, я хотел ограничить 10 для каждой команды, и есть 24 команды, я хотел бы вернуть максимум 240 записей.(при условии, что 10 существует до текущей даты)
EDIT2: Вот код, который я хочу для отдельной команды:
select s. from series s
inner join series_teams st on st.series_id = s.id
where st.team_name_id=85 and s.date_scheduled < CURRENT_DATE
order by s.date_scheduled desc
limit 10
Мне просто нужно иметь возможность применить это для всех команд.... Я не хочу делать х SQL-вызовов для каждой команды.