您好,我想知道如何实现这一目标: 我想从我在这个问题(How do I remove all spaces from a field in a Postgres database in an update query?)中尝试的select语句中删除空格和小写字段,但是我收到了一个错误。我正在使用EJB。
String where = "";
Map parametros = new HashMap();
where += "( lower(replace(o.nombres, ' ', '')) like :nombres and lower(replace(o.apellidos, ' ', '')) like :apellidos) ";
parametros.put("nombres", paciente.getNombres().toLowerCase().replaceAll("\\s+",""));
parametros.put("apellidos", paciente.getApellidos().toLowerCase().replaceAll("\\s+",""));
parametros.put(";whee", where);
List<Pacientes> aux = ejbPaciente.encontarParametros(parametros);
错误
错误说明:类com.medkf.entidades.Pacientes java.lang.IllegalArgumentException:在EntityManager中创建查询时发生异常:异常说明:语法错误解析[从Pacientes选择对象(o)为o其中(降低(替换(o.nombres,&#39;&#39;&#39;&#39;))像:nombres和lower(替换(o.apellidos,&#39;&#39;,& #39;&#39;))像:apellidos)]。 [50,77]封装的表达式不是有效的表达式。 [103,132]封装的表达式不是有效的表达式。
谢谢你的帮助。