mysql - 如何使用 spring-data-jpa 处理 mysql json 数据类型作为条件的查询

标签 mysql json spring-data-jpa

mysql中,有一列使用了json数据类型。我想以列为条件执行查询。使用 Sql,我可以像下面这样写。

select * from user where json_extract(address,'$.city')= 'beijing'

但是用spring-data-jpa,不知道怎么实现。 JPQL 没有提供一些api 实现json_extract。而jpaJpaSpecificationExecutor也没有提供同样的功能。如果有人知道怎么做,请回答这个问题。

最佳答案

试试这个:

@Query(value = "select * from user where json_extract(address,'$.city') = '?city'", nativeQuery = true)
List<User> findUsersByCity(String city);

我没有检查过。

祝你好运

关于mysql - 如何使用 spring-data-jpa 处理 mysql json 数据类型作为条件的查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45951192/

相关文章:

javascript - 我们如何以 JSON 格式存储图像?

php - 排列 JOIN 数据库结果

mysql - ON DUPLICATE KEY 添加行

javascript - 将原型(prototype)添加到 JSON 字符串中的所有对象

java - FAIL_ON_UNKOWN_PROPERTIES 在 Jersey POST 上未按预期工作

junit - @DataJpaTest 期间 Autowiring 的 ObjectMapper 为 null

mysql - 如何处理 MySql 中一个类别下的唯一项目,其中项目在不同类别下可能不是唯一的?

mysql - 从 XML 提要更新 MySQL 记录的最佳方式

java - 使用 AccessType.PROPERTY 对 JPA 实体属性调用清除失败

java - 从树构建 JPA 规范