Spring Data JPAクエリーセクションフィールド
1171 ワード
こちらは@Queryを使用しています
このsql文を書くには、対応する構築方法、デフォルトの構築方法、および一部のフィールドの構築方法を提供する必要があります.
エンティティークラス
SUM関数はlong、タイプを返すので、変換してみました.
@Query(value = "select new OrderDetail (productId,productName,sum(productQuantity) as productQuantity) from OrderDetail where " +
"TIMESTAMPDIFF(DAY,:time,createTime) = 0 " +
"group by productId,productName")
List findByCreateTime(@Param("time") String timeStamp);
このsql文を書くには、対応する構築方法、デフォルトの構築方法、および一部のフィールドの構築方法を提供する必要があります.
エンティティークラス
@Data
@Entity
@AllArgsConstructor
@NoArgsConstructor
public class OrderDetail {
@Id
private String detailId;
private String orderId;
private String productId;
private String productName;
private BigDecimal productPrice;
private Integer productQuantity;
private String productIcon;
//
private Date createTime;
//
private Date updateTime;
public OrderDetail(String productId, String productName, Long productQuantity) {
this.productId = productId;
this.productName = productName;
this.productQuantity = Integer.parseInt(productQuantity.toString());
}
}
SUM関数はlong、タイプを返すので、変換してみました.