Продукты переносятся в мою базу данных с помощью cronjob. Моя цель — внести специальные изменения только в поле имени, не затрагивая поля sku и ean. Запрос также должен найти продукт, найденный при поиске имени продукта «XDF 51241 L» при вводе «XDF51241L».
Мой запрос перед добавлением метода замены:
Код: Выделить всё
where.append(" and (p.sku like :search or pd.name like :search or p.ean like :search ");
where.append(" or EXISTS(select 1 from ProductFeature pfe where pfe.product=p and (pfe.name like :search or pfe.value like :search))) ");
q.setParameter("search", "%"+productCriteria.getSearch()+"%");
Код: Выделить всё
where.append(" and (p.sku like :search or pd.name like :search or p.ean like :search ");
where.append(" or REPLACE(pd.name, ' ', '') like :search ");
where.append(" or EXISTS(select 1 from ProductFeature pfe where pfe.product=p and (pfe.name like :search or pfe.value like :search))) ");
q.setParameter("search", "%" + productCriteria.getSearch().replaceAll("\\s+", "") + "%");
Подробнее здесь: https://stackoverflow.com/questions/786 ... d-slowness