Вывод из таблицы БД строк, значения 1 поля которой не равных значению аналогичных полей в 2-ух други

Nesquik

Новичок
Вообщем долго сижу ничего пока не подошло. Вроде задача простая. Есть таблица с полем integer допустим назовем это поле "a". Нужно вывести строки из этой таблицы, где значения поля a не равно значениям из аналогичных полей (допустим "b" и "с") 2-ух других таблиц. I need help! ::sad24.gif::

Код:
       $all_tickets = mysql_query("SELECT * FROM all_tickets WHERE m_city = '$m_city' ORDER BY m_id DESC");
получаем все из all_tickets

Код:
       $accepted_tickets_order_ac_m_id = mysql_query("SELECT * FROM accepted_tickets ORDER BY ac_m_id DESC") or die(mysql_error());
       
       $ac_m_id_array = array();
       while($accepted_tickets_array = mysql_fetch_array($accepted_tickets_order_ac_m_id)) {
         $ac_m_id_array[] = $accepted_tickets_array['ac_m_id'];
       }
Записываем в массив ac_m_id

надо чтобы SELECT * FROM all_tickets WHERE m_city = '$m_city' AND m_id != ac_m_id
заранее сорри за нубство, пишу на php/mysql недавно ::smile24.gif::
 

Redjik

Джедай-мастер
Код:
SELECT * FROM all_tickets WHERE m_city = '$m_city' AND m_id != ac_m_id
ну раз нужна такая логика - так и попробуй такой запрос
 

Nesquik

Новичок
так ошибку выдает
Код:
<b>Notice</b>: Array to string conversion in
что в принципе и логично.
 

Nesquik

Новичок
Решение:
Код:
      $all_tickets = mysql_query("SELECT * FROM all_tickets a WHERE (a.m_city = '$m_city') AND NOT EXISTS (SELECT * FROM accepted_tickets at WHERE a.m_id = at.ac_m_id) AND NOT EXISTS (SELECT * FROM rejected_tickets rj WHERE a.m_id = rj.rj_m_id) ORDER BY m_id DESC") or die(mysql_error());
 

Redjik

Джедай-мастер
Можно ветку в корзину, а текст с решением удалить - автор все равно ничего не будет менять - его решение устраивает, вдруг кто-нибудь другой увидит такое решение
 
Сверху