hibernate的查询语句怎么实现逻辑上的合并

比如我想实现查询a&b&c
可以写成:from WorkTransfer s where s.a like"+"'%"a"%'"+"and s.b like"+"'%b%'"+"and s.c like"+"'%c%'"这样的。
但是我想查询a&(b|c)应该怎么写呢?
我需要查询关键字,而这个关键字出现在这个表的两列中的任意一列就行,也就是b|c,应该怎么写hql语句呢?

from WorkTransfer s where s.a like"+"'%"a"%'"+"and (s.b like"+"'%b%'"+"or s.c like"+"'%c%'")
你都会用and了,把and换成or不就行了

首先我不太明白你要查找的关键字只的是输入一个参数?还是多个,好比如你说的,是否是三个参数,如果是,那就要用到sql拼接了。判断参数否是空,然后进行追加sql
如果是指一个参数的话:

from WorkTransfer s where s.a like"+"'%"a"%'"+"or s.b like"+"'%b%'"+"or s.c like"+"'%c%'"

from WorkTransfer s where s.a like"+"'%"a"%'"+"and (s.b like"+"'%b%'"+"or s.c like"+"'%c%'")

from WorkTransfer s where s.a like"+"'%"a"%'"+"and (s.b like"+"'%b%'"+"or s.c like"+"'%c%'")