使用特定方案的本机查询

Native Query using a specific scheme

我需要执行无法使用 HSQL 语法完成的特定查询 - see my other question

所以我需要使用本机查询来执行此操作,它工作得很好:

@Query(value = "SELECT tag FROM (SELECT DISTINCT tag FROM dev.CustomerTag)t WHERE similarity(tag, ?1) > 0 ORDER BY similarity(tag, ?1)", nativeQuery = true)
List<String> findByName(String searchQuery);

然而,问题是数据库方案(在本例中为 dev)是硬编码的,但我需要能够在我的应用程序的 属性 文件中配置它。

这在常规查询中没有问题,因为它们关心 @Table(scheme="dev") 注释,或者在我的例子中,上下文文件中的 hibernate.default_schema 配置。

如何在此查询中注入方案或如何教 spring 使用默认方案?

您始终可以实施 custom repository 并动态创建 sql 字符串,添加必要的架构。