在多列中搜索名称和 table

Searching name in multiple column and table

我正在尝试根据用户查询来搜索名称,例如 用户(id,fname,lname,..) 业务(ID,名称,地址...)

我正在写像

这样的hql查询
 String hql1 = "select count(*)  from  Client as cl  "
                    + "where cl.id=:bid "
                    + " and (cl.user.fname=:fname "
                    + " or cl.user.lname=:lname "
                    + " or cl.business.name=:name)";
            Query query1 = session.createQuery(hql1).setParameter("bid", bid)
                    .setParameter("fname", name + "%").setParameter("lname", name + "%").setParameter("name", name + "%");
            count = (Long) query1.uniqueResult();

我想搜索用户输入的字符串是否在 fname 或 lname 或 name 中。 如果喜欢任何地方,我必须去取它。 但这不是获取数据。

  String hql1 = "select count(*)  from  Client as cl  "
                + "where cl.id=:bid "
                + " and (cl.user.fname like :fname "
                + " or cl.user.lname like :lname "
                + " or cl.business.name like :name)";
        Query query1 = session.createQuery(hql1).setParameter("bid", bid)
                .setParameter("fname", "%"+name + "%").setParameter("lname", "%"+name + "%").setParameter("name", "%"+name + "%");
        count = (Long) query1.uniqueResult();