我有这个查询,我在Java中运行.
select book from com where genre=?;
Run Code Online (Sandbox Code Playgroud)
我genre动态设置参数.有没有办法有时设置参数,以便选择所有数据?
通常的技巧是设置一个单独的参数来选择所有内容:
SELECT book FROM com WHERE genre=? OR 1=?
Run Code Online (Sandbox Code Playgroud)
当您将第二个参数设置0为时,将使用按类型过滤,但是当您将其设置为时1,将返回所有内容.
如果您愿意切换到使用命名的JDBC参数,可以使用一个参数重写,并使用null表示"选择所有内容":
SELECT book FROM com WHERE genre=:genre_param OR :genre_param is null
Run Code Online (Sandbox Code Playgroud)