如何将数组插入where子句?这是获取ID的第一个查询:

$query = "SELECT id FROM #_categories WHERE alias = 'agenda'";
$result = mysql_query($query) or die(mysql_error());
   while($linha = mysql_fetch_array($result)){
   $vNome = $linha['id'];
}


现在进行第二个查询以获得最终结果:

$query = "SELECT introtext FROM $tabela WHERE catid IN ($vNome) <> ''";


结果是:

SELECT introtext FROM #_content WHERE catid IN (36) <> ''


为什么不能将所有ID放在IN子句中?

PS:对不起,英语不好,不是我的母语。

最佳答案

$vNome=array();
$result = mysql_query($query) or die(mysql_error());
  while($linha = mysql_fetch_array($result)){
  $vNome[] = $linha['id'];
}


然后的SQL:

$query = "SELECT introtext FROM $tabela WHERE catid IN (".implode(",",$vNome).")";

关于php - Where子句中的数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16085744/

10-12 12:41
查看更多