Jpa 在LIKE条件下的列值中使用通配符
在这种情况下,我需要找到与给定文件名匹配的实体。文件名的格式如下:Jpa 在LIKE条件下的列值中使用通配符,jpa,wildcard,sql-like,Jpa,Wildcard,Sql Like,在这种情况下,我需要找到与给定文件名匹配的实体。文件名的格式如下: filename1 = "ABCD_126518.pdf"; filename2 = "XYZ_32162.pdf"; 在Oracle DB中,我有具有文件名\u模式的实体,如下所示: ID | filename_pattern 1 | ABCD_ 2 | KLM 3 | XYZ_ 我需要找到给定文件名匹配的模式ID。在给定的示例中,filename1的ID=1,filename2的ID=3。在Java中,命名查询的查
filename1 = "ABCD_126518.pdf";
filename2 = "XYZ_32162.pdf";
在Oracle DB中,我有具有文件名\u模式的实体,如下所示:
ID | filename_pattern
1 | ABCD_
2 | KLM
3 | XYZ_
我需要找到给定文件名匹配的模式ID。在给定的示例中,filename1的ID=1,filename2的ID=3。在Java中,命名查询的查询应该是什么样子
我需要像这样的东西
SELECT p FROM FilenamePattern p WHERE p.filename_pattern || "%" LIKE :param;
我们使用Oracle DB和JPA 1.0。那么
SELECT p FROM FilenamePattern p WHERE :param LIKE CONCAT(p.filename_pattern, "%")
不幸的是,这对我不起作用。Eclipse一直在说:“FORM子句中没有定义标识变量‘CONCAT’。”我也尝试了相反的顺序(CONCAT()如:param),但没有检索到结果。