我有两个ID,ID_A和ID_B。
我想做的就是基于这两个id进行搜索,但是用户不需要两个都输入两个。
例如,我有两个输入框供用户输入ID_A和ID_B。
当使用ID_A搜索对象时,我希望查询忽略我的ID_B(将其设置为default-NOT NULL)。在数据库上可以使用通配符'%'来执行此操作,但我不知道在春季如何执行此操作。这两个ID都是BigDecimals。
我试图做
f
替代参数方法将某个参数的当前值更改为通配符'%'。但是,执行此查询时:
f
如果id_a或id_b为'%',则程序捕获到错误,该错误找到了'%'并且其应该是bigDecimal。
如何解决错误?
谢谢。
答案 0 :(得分:0)
您可以使用以下查询:
Select t from Table t where :id_a is null or t.ID_A like :id_a and :id_b is null or t.ID_B like :id_b
希望这对您有用。