PHP SELECT WHERE array_intersect


PHP SELECT WHERE array_intersect

需要通过PHP运行mysql SELECT,其中两个数组相等。

 $sql = "SELECT * FROM around WHERE 'array_intersect($ar1, $ar2)'";
 $resultsd = $conn->query($sql);
 foreach($resultsd as $rowd) {
 $sword[] = $rowd['TIM'];
 }

找到匹配项后,需要从mysql中的特定行中提取。这需要在PHP中。

阵列来自:

  $ar1 = array();
  $sql = "SELECT * FROM blc WHERE ffv='$safe_username'";
  $results = $conn->query($sql);
  foreach($results as $row) {  
  $ar1[] = $row['vvvs'];
  }

给定两个数组,并希望对这些数组的交集执行查询:

$array1 = array("a" => "green", "red", "blue");
$array2 = array("b" => "green", "yellow", "red");
$result = array_intersect($array1, $array2);
$sql = "SELECT * FROM `around` WHERE `foo` IN ('" . implode("','", $result) . "')";

这将导致查询:

SELECT * FROM `around` WHERE `foo` IN ('green','red')

交叉发生在查询之外,因为在数据在查询中可用之前,还有一些事情要处理。事实上,我会更整洁,这样做:

$results = "'" . implode("','", $result) . "'";
$sql = "SELECT * FROM `around` WHERE `foo` IN ({$results})";