PHP / mySQL-在关联数组中选择WHERE多个值

||
$skuArray = array(00240=>123,00241=>456);
$getSkus = mysql_query(\"SELECT sku FROM data WHERE sku IN($skuArray)\");
我上面的代码不起作用,如何使它在sku = $ skuArray中的任何键名的情况下从数据中选择所有sku \? (在这种情况下为00240和00241) 希望这有意义,谢谢。     
已邀请:
        尝试这个:
<?php
$skuArray = array(\'00240\'=>123, \'00241\'=>456);

$inSkus = array();

foreach (array_keys($skuArray) as $key)
{
    $inSkus[] = \'\"\' . $key . \'\"\';
}

$sql = \'SELECT sku FROM data WHERE sku IN (\' . implode(\', \', $inSkus) . \')\';

echo $sql;
您需要将键作为字符串,然后将其包装在括号中以进行SQL查询。     
        
$skuArray = array(\'00240\'=>123,\'00241\'=>456);
$keys = array_keys($skuArray);
$getSkus = mysql_query(\"SELECT sku FROM data WHERE sku IN(\'\" . join(\"\',\'\", $keys) . \"\')\");
    
        
 foreach($skuArray  as $value=>$key){
    if($where==\"\")
       $where= $value\" = \'\".$key.\"\'\";
    else
       $where.= $value\" = \'\".$key.\"\'\";
 }
 $getSkus = mysql_query(\"SELECT sku FROM data \" .($where)?\" WHERE   $where )\":\"\");
    

要回复问题请先登录注册