首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JPA LocalDateTime比较SQL

JPA LocalDateTime比较SQL
EN

Stack Overflow用户
提问于 2017-11-08 10:33:26
回答 1查看 1.6K关注 0票数 0

我有一个Java项目,其中包含一个带有LocalDateTime的实体。我想通过SQL提取记录,其中LocalDateTime位于其他两个LocalDateTime之间。

实体

代码语言:javascript
复制
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(nullable = false)
private long id;

@Basic(optional = false)
@Column(nullable = false)   
private long assignmentId;

@Basic(optional = false)
@Column(nullable = false)   
private LocalDateTime startDateTime;

@Basic(optional = false)
@Column(nullable = false)   
private LocalDateTime endDateTime;

JAVA

代码语言:javascript
复制
//Sub assignments
public List<Subassignment> findAllSubassignmentsForAssignmentBetweenDates(long id, LocalDateTime startDateTime, LocalDateTime endDateTime) {
    return getEntityManager().createNamedQuery("ResourceVO.findByAssignmentIdAndDates", Subassignment.class)
            .setParameter("id", id)
            .setParameter("sdt", startDateTime)
            .setParameter("edt", endDateTime)
            .getResultList();
}

查询

代码语言:javascript
复制
<named-query name='ResourceVO.findByAssignmentIdAndDates'>
    <query>         
        SELECT c FROM Subassignment AS c 
        WHERE (c.assignmentId IN (SELECT b.id FROM Assignment b WHERE b.resource.id = :id))
        AND (c.startDateTime BETWEEN :sdt AND :edt)

    </query>
</named-query>

我总是收到一个“内部服务器错误”。有什么建议吗?

没有LocalDateTime参数,查询工作正常。

谢谢

马蒂希斯

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-15 11:00:39

我把LocalDateTime改成了long

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47177368

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档