1

我有一张桌子:

| USERNAME | FORNAME | SURNAME | TELNUMBER | ZIPCODE ....

我想在 1 个查询/语句中搜索用户名名字和姓氏 .. 我不想要多行 .. 喜欢 .. 让我们说 ..

用户名:maria33 姓名:maria

所以这应该是 1 行 .. 当我搜索 mar%

而不是2!

4

1 回答 1

4

作为准备好的声明:

SELECT *
FROM   users
WHERE  username LIKE ?
    OR forname  LIKE ?
    OR surname  LIKE ?

然后,如果您使用相同的字符串填写所有三个参数,则"%mar%"

preparedStatement.setString(1, "mar%");
preparedStatement.setString(2, "mar%");
preparedStatement.setString(3, "mar%");

你最终会得到这个 SQL 语句:

SELECT *
FROM   users
WHERE  username LIKE "mar%"
    OR forname  LIKE "mar%"
    OR surname  LIKE "mar%"
于 2009-07-10T03:13:04.210 回答