Php 其中包含多个参数的SQL查询
我有这样一个简单的数据库:Php 其中包含多个参数的SQL查询,php,sql,where-clause,Php,Sql,Where Clause,我有这样一个简单的数据库: Name id ----------- music 1 sport 2 theatre 3 我只是想展示一下 音乐 剧院 我用ID调用一个函数,并希望显示相应的名称,我的查询是这样的,但什么也没发生 $array = array(1,3); $id = implode(',', $array); $result = doQuery("SELECT Name FROM categorie
Name id
-----------
music 1
sport 2
theatre 3
我只是想展示一下
音乐
剧院
我用ID调用一个函数,并希望显示相应的名称,我的查询是这样的,但什么也没发生
$array = array(1,3);
$id = implode(',', $array);
$result = doQuery("SELECT Name
FROM categories c
WHERE c.id IN '" . $id. "'
");
if(hasRows($result)){
while($row = mysql_fetch_row($result)){
echo $row[0];
}
}
我怀疑您需要的是包装在而不是“”中的
$result = doQuery("SELECT Name
FROM categories c
WHERE c.id IN (" . $id. ")
");
在中使用时,必须将条件放在括号中,但如果不使用这些条件,请尝试以下操作:
$array = array(1,3);
$id = implode(',', $array);
$result = doQuery("SELECT Name
FROM categories c
WHERE c.id IN (" . $id. ")
");
if(hasRows($result)){
while($row = mysql_fetch_row($result)){
echo $row[0];
}
}
在打了一个DB电话之后,通常最好是。此外,您应该注意到,您正在学习一个废弃的库——考虑切换到更新的MySQLI或PDO扩展。在这需要有效的语法,但根据SQL的味道,您没有指定使用动态SQL查询所需的RDBMS,或者将分隔的数组分割为表中的In select ID的表。