2009-07-10 17 views
1

Ich habe eine Tabelle:mySQL Suche in mehreren Reihen

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

und ich möchte .. Benutzername Vor- und Nachnamen in 1 Abfrage/Anweisung suchen und ich will nicht mehrere Zeilen .. wie .. sagen wir ..

Benutzername: maria33 forname: maria

so sollte diese 1 Reihe sein .. wenn ich mar%

und nicht 2 zu suchen!

Antwort

4

Als vorbereitete Erklärung:

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

Dann, wenn Sie in allen drei Parametern mit der gleichen Zeichenfolge, "%mar%" füllen:

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

Sie würden sich mit dieser SQL-Anweisung beenden:

SELECT * 
FROM users 
WHERE username LIKE "mar%" 
    OR forname LIKE "mar%" 
    OR surname LIKE "mar%" 
+0

Danke .. und als vorbereitete Aussage? – darkrain