У меня есть таблица, содержащая имена участников и поле с несколькими идентификационными номерами. Я хочу создать запрос, который возвращает результаты, в которых любые значения в полях ID перекрываются с любыми значениями в массиве.
Например: фамилия: Смит имя: Джон id: 101, 103
У меня есть массив №1 со значениями 101, 102, 103.
Я хочу, чтобы запрос выводил всех участников, у которых в поле идентификатора указаны значения 101, 102 или 103 с несколькими перечисленными идентификаторами.
Array ( [0] => 101
[1] => 102
[2] => 103 )
$sql="SELECT firstname, lastname, id
FROM members WHERE id LIKE '%".$array_num_1."%'";
$result=mysql_query($sql);
while ($rows=mysql_fetch_array($result)) {
echo $rows['lastname'].', '.$rows['firstname'].'-'.$rows['id'];
}
Я попытался упростить его. Идентификаторы на самом деле хранятся в другой таблице, и я сгенерировал массив из этой таблицы.
$array_num_1 = array();
$sql_id="SELECT id FROM id_table WHERE id < 200";
$result_id=mysql_query($sql_id);
while($rows_id=mysql_fetch_array($result_id)){;
$array_num_1[] = $rows_id['id'];
}