Необходимо выбрать данные из таблицы, значения параметра у которой не равны определенным значениям этого параметра в другой таблице
Сначала выбираем значения в первой таблице
$sql1 = "SELECT id2 FROM tab1 WHERE id1= X";
А дальше нужно во второй выбрать все значения, где значения id2 не равны значениям, выбранным в 1 таблице
$sql1 = "SELECT * FROM tab2 WHERE id2 <> ....(тем, что выбраны в $sql1)";
циклом не получается. Понимаю, что нужно как-то массивом.
Спустя 16 минут, 36 секунд (15.04.2011 - 03:54) kirik написал(а):
"SELECT * FROM tab2 WHERE id2 NOT IN(" . implode(',', $ids) . ")"
где $ids - массив с айдишниками из первого запроса
UPD
Можно попробовать одним запросом (не уверен насчет производительности)
SELECT * FROM tab2 WHERE id2 NOT IN(SELECT id2 FROM tab1 WHERE id1= X)
Спустя 7 часов, 28 минут, 51 секунда (15.04.2011 - 11:23) Seona написал(а):
спасибо большое
Все получилось )
сделала вторым способом
![wub.gif](http://phpforum.ru/html/emoticons/wub.gif)
сделала вторым способом