За последние 24 часа нас посетили 18838 программистов и 1702 робота. Сейчас ищут 723 программиста ...

Запрос выбора

Тема в разделе "MySQL", создана пользователем mikeles, 13 ноя 2009.

  1. mikeles

    mikeles Активный пользователь

    С нами с:
    1 ноя 2009
    Сообщения:
    51
    Симпатии:
    0
    У меня есть база вида : Раздел1->Подраздел2->Подподраздел3.

    Если я хочу удалить полностью Раздел базы с подразделами, то есть все элементы включающие Раздел1->Подраздел2->Подподраздел3 с условием что в каждом подразделе есть элемент,то выполняю такой запрос

    [sql]DELETE katalog,podkatalog,pokupka FROM katalog,podkatalog,pokupka where katalog.katalogID=$id AND podkatalog.katalogID=katalog.katalogID AND podkatalog.podkatalogID=pokupka.podkatalogID[/sql]

    Но если в подраздел2 и подподразделе3 не будет элемента то запрос не выполняется.
    Подскажите как можно выполнить запрос если в подраздел2 и подподразделе3 не будет элемента.
     
  2. GudGuy

    GudGuy Активный пользователь

    С нами с:
    14 июн 2007
    Сообщения:
    909
    Симпатии:
    0
    Адрес:
    Москва
    поробуй поменять AND на OR... хотя меня что-то смущает в это способе...
    [sql](katalog.katalogID=$id AND podkatalog.katalogID=katalog.katalogID AND dkatalog.podkatalogID=pokupka.podkatalogID) OR (katalog.katalogID=$id AND podkatalog.katalogID=katalog.katalogID ) OR (katalog.katalogID=$id )[/sql]
    то же не шарман, но работать должно
     
  3. DarkElf

    DarkElf Активный пользователь

    С нами с:
    22 окт 2006
    Сообщения:
    1.632
    Симпатии:
    0
    mikeles


    [sql]delete t1.*, t2.*, t3.*
    from table1 t1
    left join table2 t2 ON t2.t1_id = t1.id
    left join table3 t3 ON t3.t2_id = t2.t3_id
    where
    t1.id = 777[/sql]
     
  4. mikeles

    mikeles Активный пользователь

    С нами с:
    1 ноя 2009
    Сообщения:
    51
    Симпатии:
    0
    Спасибо за подсказку!