
[英]In Spring Data Jpa, how can I run an SQL union query from two different datasources...?
[英]How can I run this SQL statement with SpringBoot data JPA?
提示:本站为国内最大中英文翻译问答网站,提供中英文对照查看,鼠标放在中文字句上可显示英文原文。
我正在尝试使用 SpringBoot 和 PostgreSQL 创建数据过滤器,我正在尝试运行查询以在搜索栏中通过其name
或id
或account id
获取客户,在 Spring 中运行本机 SQL 语句时遇到问题数据 JPA,我收到以下错误:
错误说Could not execute query
。 我试过以不同的方式运行该语句但仍然给我错误,这些是我尝试过的方式:
@Query(
value = "SELECT json_data FROM contact WHERE name = :searchText OR account_id = :searchText OR id = :searchText",
nativeQuery = true)
@Query(
value = "SELECT json_data FROM contact WHERE contact.name LIKE %:searchText% OR contact.account_id LIKE %:searchText% OR contact.id LIKE %:searchText%",
nativeQuery = true)
@Query(
value = "SELECT json_data FROM contact WHERE name = ?1 OR account_id = ?1 OR id = ?1",
nativeQuery = true)
Page<Contact> findByWord(Pageable pageable, @Param("searchText") String searchText);
我能够在 PGAdmin 中成功运行查询,如下所示:
SELECT json_data FROM contact
WHERE name = 'TESLA ARQUITECTURA S.A.S'
OR account_id = ''
OR id = ''
或者:
SELECT json_data FROM contact
WHERE name = ''
OR contact.account_id = ''
OR contact.id = '2'
或者:
SELECT json_data FROM contact
WHERE name = ''
OR account_id = '1674590687S'
OR id = ''
所有这些语句都有效,想法是如果我将参数作为参数传递给 SQL 语句,它将返回json_data
列中的信息。
所以我不确定我在存储库中创建查询时是否做错了什么,非常感谢您对此的帮助。
在您的查询中执行select *
而不是select json_data
,目前您正在尝试将单个列 map 放入整个实体中,这就是它抱怨结果集中缺少 id 的原因。 column name seq_id was not found in this result set
一直存在于错误日志中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.