SQL 多参数查询
SQL query with multiple parameters in where
我有一个像这样的简单数据库:
Name id
-----------
music 1
sport 2
theatre 3
我只想展示
music
theatre
我用 ids 调用了一个函数,想显示对应的名称,我的查询看起来像这样,但没有任何反应
$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];
}
}
我怀疑您需要将 IN 包裹在 ( ) 而不是“ ”中。
$result = doQuery("SELECT Name
FROM categories c
WHERE c.id IN (" . $id. ")
");
当您使用 IN 时,您必须将条件放在括号中,但在您不使用它们的情况下,请尝试如下操作:
$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];
}
}
我有一个像这样的简单数据库:
Name id
-----------
music 1
sport 2
theatre 3
我只想展示
music
theatre
我用 ids 调用了一个函数,想显示对应的名称,我的查询看起来像这样,但没有任何反应
$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];
}
}
我怀疑您需要将 IN 包裹在 ( ) 而不是“ ”中。
$result = doQuery("SELECT Name
FROM categories c
WHERE c.id IN (" . $id. ")
");
当您使用 IN 时,您必须将条件放在括号中,但在您不使用它们的情况下,请尝试如下操作:
$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];
}
}