У меня есть сущность, как показано ниже:
@Entity
public class Order {
@Id
private String orderId;
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "created_at", nullable = false)
private Date created;
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "updated_at", nullable = false)
private Date updated;
@PrePersist
protected void onCreate() {
this.created = new Date();
this.updated = this.created;
}
@PreUpdate
protected void onUpdate() {
this.updated = new Date();
}
}
Мне нужно найти все заказы, которые создали или обновили дату в пределах определенного диапазона дат. Для этого у меня есть метод ниже, определенный в моем хранилище:
public interface OrderRepository extends PagingAndSortingRepository<Order, String>,
QuerydslPredicateExecutor<Order> {
public Page<Order> findByCreatedBetweenOrUpdatedBetween(Date startCreatedDate,
Date endCreatedDate, Date startUpdatedDate, Date endUptedDate, Pageable pageRequest);
}
У меня вопрос: могу ли я просто проверить Updated_date
вместо даты создания и обновления, как показано ниже?
public Page<Order> findByUpdatedBetween(Date startUpdatedDate, Date endUptedDate, Pageable pageRequest);
Я заметил, что updated_date
обновляется в тот момент, когда в строку вставляется то же значение, что и created_date
. Есть ли шанс, что я пропущу любую из записей, если я просто проверю updated_date на предоставленный диапазон дат.