Mysql УДАЛИТЬ с помощью SELECT (?) - PullRequest
0 голосов
/ 05 января 2012

У меня есть 2 таблицы, и я немного запутался ...

      |products|                          
________________________
|  id  | products_name |
|______________________|
|   1  |  iphone4      |
|   2  |  htc desire   |
    etc.............


     |special_price|
________________________
|  id  | products_price|
|______________________|
|   1  |  400          |
|   2  |  500          |
    etc.............

Все, что я хочу сделать, это:

DELETE (ALL) FROM special_price WHERE products_name='iphone4'

Как это может произойти?

Ответы [ 2 ]

4 голосов
/ 05 января 2012

Вам нужно найти идентификаторы для этого имени продукта, попробуйте это:

с IN: (полезно для сложных условий)

DELETE FROM special_price 
WHERE id IN ( SELECT id FROM products WHERE products_name = 'iphone4' )
4 голосов
/ 05 января 2012

Попробуйте это:

DELETE sp FROM special_price sp
INNER JOIN products p ON p.id = sp.id
WHERE p.products_name = "iphone4";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...