У меня следующий запрос:
select count(L.ID)
from LA inner join L on (LA.leadid = L.ID)
where L.status = 5
and L.city = "cityname"
and Date(LA.Datetime) < Date_Sub(Now(), INTERVAL 6 MONTH);
, который ищет записи со статусом 5 в определенном городе старше 6 месяцев (дата, для которой хранится в Лос-Анджелесе). Это возвращает около 4k результатов. Я хотел бы обновить значение статуса до 1 для каждой из этих записей, поэтому мое обновление выглядит следующим образом:
update L, LA
set L.status = 1
where L.status = 5
and L.city = "cityname"
and Date(LA.SomeDatetime) < Date_Sub(Now(), INTERVAL 6 MONTH);
но он останавливается и блокирует БД. Я подозреваю, что есть проблема, потому что нет соединения, но я пытаюсь что-то вроде:
update L, LA
from L inner join LA on (L.OID = LA.leadid)
set L.status = 1
where L.status = 5
and L.syscity = "cityname"
and Date(LA.SomeDatetime) < Date_Sub(Now(), INTERVAL 6 MONTH);
и он, очевидно, не будет работать, потому что в обновлении нет 'from'.
edit> Я использую MySQL