2011-06-22 155 views
21

如何在我的MySQL DB中選擇一行,例如列的值包含'XcodeDev'?SELECT where row value contains string MySQL

我想:

SELECT * FROM Accounts WHERE Username LIKE '$query' 

但只選擇一排是Username值是完全一樣的查詢。

我能做些什麼來實現我想要的?

+1

'LIKE '%$查詢%'' –

回答

43

使用% wildcard,它可以匹配任意數量的字符。

SELECT * FROM Accounts WHERE Username LIKE '%query%' 
+1

我認爲你缺少的標誌多萊爾非常 – Adam

+0

有用+1。 –

13

這應該工作:

SELECT * FROM Accounts WHERE Username LIKE '%$query%' 
+1

爲什麼美元符號? – Michelle

+1

這是用來表示PHP中的變量名稱。 – jncraton

3
SELECT * FROM Accounts WHERE Username LIKE '%$query%' 

,但它不是建議。使用PDO

4

我的建議是

$value = $_POST["myfield"]; 

$Query = Database::Prepare("SELECT * FROM TABLE WHERE MYFIELD LIKE ?"); 
$Query->Execute(array("%".$value."%")); 
相關問題