MySql 喜欢 %

MySql like with %

我正在尝试执行 SQL 查询,该查询将提供我的 table 中以 'Ana%'.

开头的所有用户名

有两行是这样的:

  1. 安娜
  2. 阿纳斯塔西娅

我的代码是这样的:

$value="Ana"
$sql=mysql_query("Select username from users where username like {"."'".$value."%"."'}"); 

$row=mysql_fetch_array($sql);

print_r($row);

问题是我只获得了关于用户 Ana 的信息,而不是 Ana 和 Anastasia 应有的信息。

我试过没有括号{},但是没有用。

你的 LIKE 子句应该是

like '".$value."%'");

没有 {},也不需要所有额外的连接。所以整个命令将是

$sql=mysql_query("Select username from users where username like '".$value."%'");

也就是说,mysql_* 函数已弃用,您对 SQL 注入持开放态度,因此您需要担心更大的问题。您需要使用 PDO 或 MySQLi 和准备好的语句。

编辑: 此外,您没有检索数据的两行。 mysql_fetch_array()一次只取一行,所以你需要使用循环,像这样:

while($row=mysql_fetch_array($sql)) {
    print_r($row);
}

试试这个:-

$sql=mysql_query("Select username from users where username like '".$value."%'");