我正在使用准备好的语句来执行mysql数据库查询。我想基于各种关键字实现搜索功能。
为此,我需要使用LIKE
关键字,这一点我知道很多。而且我之前也使用过预处理语句,但是我不知道如何使用它,LIKE
因为从以下代码中,我将在哪里添加'keyword%'
?
我可以直接在pstmt.setString(1, notes)
as (1, notes+"%")
或类似的东西中使用它吗?我在网络上看到很多帖子,但在任何地方都没有好的答案。
PreparedStatement pstmt = con.prepareStatement(
"SELECT * FROM analysis WHERE notes like ?");
pstmt.setString(1, notes);
ResultSet rs = pstmt.executeQuery();
... LIKE '%' || ? || '%'
或类似方式在SQL中“设置”它,但是灵活性较差。