在 spring boot for postgresql 中的 createNativeQuery () 的 split_part () 处或附近的错误语法错误
error syntax error at or near ":" for split_part () of createNativeQuery in spring boot for postgresql
我在执行包含
的查询时遇到 SQL 异常
split_part() method as split_part(value::TEXT,':', 1).
String queryStr = " select split_part(value::TEXT,':', 1) from table";
Query query = entityManager.createNativeQuery(queryStr);
List results = query.getResultList();
ERROR 2020-02-10 14:54:37,926 [http-nio-7070-exec-1] 142 - ERROR: syntax error at or near ":"
Position: 855
您的混淆层可能会阻塞 ::
运算符。请改用 cast()
运算符:
String queryStr = " select split_part(cast(value as text),':', 1) from table";
但是你为什么认为你需要先演员表?如果您正在存储该列的 :
个字符,那么它很可能是一个 text
(或 varchar
)列,您根本不需要强制转换。
我在执行包含
的查询时遇到 SQL 异常split_part() method as split_part(value::TEXT,':', 1).
String queryStr = " select split_part(value::TEXT,':', 1) from table";
Query query = entityManager.createNativeQuery(queryStr);
List results = query.getResultList();
ERROR 2020-02-10 14:54:37,926 [http-nio-7070-exec-1] 142 - ERROR: syntax error at or near ":"
Position: 855
您的混淆层可能会阻塞 ::
运算符。请改用 cast()
运算符:
String queryStr = " select split_part(cast(value as text),':', 1) from table";
但是你为什么认为你需要先演员表?如果您正在存储该列的 :
个字符,那么它很可能是一个 text
(或 varchar
)列,您根本不需要强制转换。