Моя текущая проблема заключается в следующем. Приведенный ниже сценарий выбора работает отлично.
SELECT *
FROM orderheader, orderbody, orderbodylocation
WHERE orderheader.DateCreated > '2011-02-01 00:00:00'
AND orderheader.OrderID = orderbody.OrderID
AND orderbody.OrderBodyID = orderbodylocation.OrderBodyID
AND orderbody.OrderID = orderbodylocation.OrderID
AND orderheader.Status <= 1
но приведенный ниже запрос на удаление, который является дублированием предложений where, не работает с предложением dateCreated.
DELETE
FROM orderheader, orderbody, orderbodylocation
WHERE orderheader.DateCreated > '2011-02-01 00:00:00'
AND orderheader.OrderID = orderbody.OrderID
AND orderbody.OrderBodyID = orderbodylocation.OrderBodyID
AND orderbody.OrderID = orderbodylocation.OrderID
AND orderheader.Status <= 1
Поле DateCreated в таблице заголовков заказов имеет тип DATETIME.
Я пытаюсь удалить каждый заказ новее, чем 1-2-2011 (д-м-г) вместе с данными таблицы, связанными с заголовками заказов, в таблицах orderbody и orderbodylocation.
У меня закончились идеи, и у меня не было большого опыта работы с полями типа данных mysql DateTime. Если кто-нибудь увидит мою ошибку, я был бы очень признателен, если бы вы могли сообщить мне, что я сделал неправильно.
Mysql 5.1.53 (version 64 bits); Mysql 5.5.8 (version 32 bits)
- person zerkms   schedule 08.02.2011orderbodylocation
иWHERE
и снова поставить один пробел (не новую строку)? - person zerkms   schedule 08.02.2011