Вот мой запрос:
$query="Delete b
Where Exists
(
Select 1
From a
Where a.poster_password = '$pass'
And a.ad_id = '$id'
And a.classified_id = b.classified_id
)
Delete a
Where a.poster_password = '$pass'
And a.ad_id = '$id'";
Я получаю эту ошибку:
У вас ошибка в синтаксисе SQL; проверьте руководство, соответствующее вашей версии сервера MySQL, на предмет правильного синтаксиса, который можно использовать рядом с пунктом «Где существует» (выберите 1 в месте «a.poster_p» в строке 2
Если вам нужно больше информации, дайте мне знать ...
Что здесь не так?
Спасибо
UDPATE:
Просто вопрос: мне нужно также указать, что a = "эта таблица" и b = "другая таблица" или MySql получает это по этому коду?
Что касается нового размещенного кода, где использовать FROM и точку с запятой, он не будет работать и выдаст эту ошибку:
У вас ошибка в синтаксисе SQL; проверьте руководство, соответствующее вашей версии сервера MySQL, на предмет правильного синтаксиса, который можно использовать рядом с «Удалить из a, где a.poster_password =« xxxxxxxxxxxxxxxxxxxxx »в строке 10
UPDATE2:
$query="Delete FROM $sql_table
Where Exists
(
Select 1
From classified
Where classified.poster_password = '$pass'
And classified.ad_id = '$id'
And classified.classified_id = $sql_table.classified_id
);
Delete FROM classified
Where classified.poster_password = '$pass'
And classified.ad_id = '$id'";
И когда я echo $query
: (fordon в этом случае $sql_table
переменная.)
Delete FROM fordon
Where Exists
(
Select 1
From classified
Where classified.poster_password = 'xxxxx'
And classified.ad_id = 'motorbat_166250627'
And classified.classified_id = fordon.classified_id
);
Delete FROM classified
Where classified.poster_password = 'xxxxx'
And classified.ad_id = 'motorbat_166250627'
Еще раз спасибо