2009-07-10 78 views
1

我有一个表:MySQL的搜索

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

,我要搜索用户名的名字及姓氏在1查询/声明..我不想多行.. 如..可以说..

用户名:maria33 的forName:玛丽亚

所以这应该是1排..当我搜索三月%

,而不是2!

回答

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%" 
+0

谢谢..并作为一个准备好的声明? – darkrain 2009-07-10 03:22:14