SELECT其中行值包含字符串MySQL

max*_*ax_ 31 php mysql

如何在MySQL数据库中选择一行,例如列的值包含'XcodeDev'?

我试过了:

SELECT * FROM Accounts WHERE Username LIKE '$query'
Run Code Online (Sandbox Code Playgroud)

但它只选择一行,其中Username值与查询完全相同.

我能做些什么才能达到我的目的?

Mat*_*all 67

使用匹配任意数量字符的%通配符.

SELECT * FROM Accounts WHERE Username LIKE '%query%'
Run Code Online (Sandbox Code Playgroud)

  • 我想你错过了美元符号 (2认同)

jnc*_*ton 15

这应该工作:

SELECT * FROM Accounts WHERE Username LIKE '%$query%'
Run Code Online (Sandbox Code Playgroud)

  • 这用于表示PHP中的变量名称. (2认同)

小智 6

我的建议是

$value = $_POST["myfield"];

$Query = Database::Prepare("SELECT * FROM TABLE WHERE MYFIELD LIKE ?");
$Query->Execute(array("%".$value."%"));
Run Code Online (Sandbox Code Playgroud)