Oracle存储过程中,通过传入参数,若参数为空,不是null,如何忽略这个查询条件

我相当于是外面传参data,最开始我想的是用nvl,我觉得理想的是这样
select 1 from bd_user where id=nvl(data,id)
如果data为空就id为id
但是实际情况是,用户如果没有选择data,也就是data没接受值,打印出来就是
select 1 from bd_user where id=nvl(,id)
这样就直接报错了

可以测试 条件 where id like data||id||'%'

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^