如何从选择查询中删除Postgres数据库中小写字段的所有空格?

时间:2017-01-12 20:13:52

标签: java postgresql jpa jpql

您好,我想知道如何实现这一目标: 我想从我在这个问题(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]封装的表达式不是有效的表达式。

谢谢你的帮助。

0 个答案:

没有答案