当前位置: 首页 > 知识库问答 >
问题:

JPQL查询不使用BETWEEN运算符生成结果

卜瀚漠
2023-03-14

使用此方法时:

    public static List<Image> listImages(double longitude, double latitude) {
    Query q = em.createQuery("select e from Image as e where e.long_ between " 
+(longitude - 0.1)+" and "+(longitude + 0.1)+ " and e.lat between "+(latitude-0.1)+" and "+(latitude+0.1)+" order by e.id desc");

    @SuppressWarnings("unchecked")
    List<Image> imageList = q.getResultList();
    System.out.println("Size: " + imageList.size());
    return imageList;
}

imageList返回为空,imageList。返回0()大小。即使查询应该根据查询从我的数据库返回至少几行。

我不知道该怎么办,因为我没有得到任何错误。它只是空着回来。请让我知道,如果我应该提供别的东西!

共有1个答案

应向晨
2023-03-14

我才意识到出了什么问题。我搞砸了。

    public Image(String url, double longitude, double latitude, Time time) {
    this.url = url;
    this.lat = latitude;
    this.long_ = longitude;
    this.moment = time;
}

我在这里放错了经度和纬度,所以当我把一些东西插入数据库时,经度和纬度是贸易的地方。这就是为什么我没有得到任何结果。抱歉!

 类似资料:
  • 有几种不同方法可以生成查询结果: 结果数组 结果行 自定义结果对象 结果辅助方法 Class Reference 结果数组 result() 方法 该方法以**对象数组**形式返回查询结果,如果查询失败返回**空数组**。 一般情况下,你会像下面这样在一个 foreach 循环中使用它: $query = $this->db->query("YOUR QUERY"); foreach ($que

  • Between...And 运算符 判断表达式的值是否落在指定的范围中。你可以在 SQL语句中使用这一运算符。 语法 expr [Not] Between value1 And value2 Between...And 运算符语法包含以下部分: 部分 说明 expr 识别字段的表达式,它包含要计算的数据。 value1,value2 为要计算的 expr 而设置的表达式。 说明 如果 expr 的

  • 问题内容: 设置以下映射 通知ID是一个整数。现在我需要使用like运算符进行此HQL查询 ATT:它 就像 运算符NOT = (等于运算符) 然后我用 但是不起作用,因为Hibernate抱怨在调用User.id的getter时发生了IllegalArgumentException 即使我使用 这没用 我应该使用什么来传递查询? 问题答案: 根据Hibernate参考: str()用于将数字或时

  • 我不能使用操作符“and”执行查询,无论是使用筛选器还是查询。 http://www.elasticsearch.org/guide/reference/query-dsl/bool-query/ http://www.elasticsearch.org/guide/reference/query-dsl/and-filter/ 我试过: 会产生以下错误的: 我也试过: 此查询不返回错误消息,但它

  • 问题内容: 我已经将奇怪的MySQL问题归结为执行查询的两种不同方式。当您煮沸所有东西时,这种方式将返回更多结果: 对WHERE子句的此更改将产生这些结果的子集: (promo_detail_store_id在MyISAM表中定义为BIGINT。) 最初,该store_ids列表要长得多,而我开始将其切得越来越短,以为字符串的长度可能存在一些怪异的限制。但是不,它也适用于很小的字符串/列表。显然,

  • 问题内容: 通配符*只能在单词的末尾使用,例如。 我想用like查询,该怎么做? 问题答案: Lucene提供了ReverseStringFilter,它允许执行通配符搜索,例如* user。它通过以相反顺序索引所有术语来工作。 但是我认为没有办法做类似’LIKE%user%’的事情。