将 SQL 查询转换为命名查询


SELECT col1 || col2 FROM TABLE
WHERE col3= '3' and substr(col4, 1,2) = 'I1'  

我正在尝试将此SQL查询转换为命名查询。我正在尝试使用查询获取 col1 和 col2 并在最后连接它们,但面临子字符串部分的问题。我不确定如何将其包含在我的命名查询中。

表中的示例数据 -

Col1 | Col2 | Col3 | Col4

3 |I21 |嗨 |如何
3 |I22 |是 |你
3 |I23 |先生 |xx
3 |I 2 |嗨 |如何
3 |K31 |嗨 |如何
3 |K32 |是 |你
3 |J 1 |嗨 |如何

@NamedQuery(name = "retrieveMessage", query = "SELECT i.col1, i.col2 FROM TABLE i where i.col3= :col3 AND substr(i.col4,1,2) = :col4")

JPQL 有 SUBSTRING 函数:

SUBSTRING(col4, 1,2) = :col4

最新更新