jpa查询结果与实际不符

我在使用springboot集成jpa的时候,有一个自定义查询与mysql实际的执行结果不符。
自定义查询如下:

@Query("select o from MyOrder o where o.phoneNum=?1 and o.ostart>=?2")
List<MyOrder> findByPhoneNumAndOstartAfter(String phoneNum, Date date);

其中,调用处为:

List<MyOrder> orders = orderRepository.findByPhoneNumAndOstartAfter(phoneNum, date);
//phoneNum=“123456”,date=Mon Oct 01 00:00:00 CST 2018

手动操作mysql的sql语句如下:

select*from my_order where phone_num='123456' and ostart>='2018-10-01 00:00:00';

使用jpa的结果集只有一条记录,而实际符合条件的有5条记录。我本以为是接口中After的问题,但是我自己用@Query定义了查询后发现结果还是不对,不知道哪里出了错

阅读 4.3k
1 个回答

你再properties文件中添加这两个,执行一下查询,打印你自定义的SQL语句看一下

jpa.hibernate.show-sql=true
jpa.hibernate.format-sql= true
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题