JPA concat operator

2022-09-01 07:19:19

是否有用于字符串串联的 JPA concat 运算符?

我知道有一个JPA函数,但是用于连接多个字符串很丑陋。CONCAT

CONCAT(CONCAT(CONCAT(cola,colb),colc),cold)

像甲骨文这样的供应商提供其他一些像微软一样的产品。是否有标准的JPA串联运算符,以便我可以创建一个查询,例如||+

cola || colb || colc || cold

我尝试将openjpa与SQL Server一起使用,但是它似乎是无效的JPQL。我在预言机引用中找不到有关此类运算符的任何信息。+


答案 1

该函数在 JPA 2.0 中进行了扩展,允许传递 2 个以上的参数,来自规范的 4.6.17.2.1 节(字符串函数):CONCAT

CONCAT(string_primary, string_primary {, string_primary}* )

在 JPA 1 中,这仅限于两个参数。


答案 2

您可以将 JPA Concat 函数用于多个字符串。

例如:

CONCAT(cola, colb, colc, cold)