여기에서 검색을 시도했지만 운이 없습니다. 동일한 문제는없는 것으로 보입니다. 하위 쿼리, 오류 1093을 사용하는 MySQL 업데이트
나는이 선택이 있습니다SELECT a.whse, a.sku, a.data, a.dt_exp FROM volume_hist_fin a
WHERE a.data = (
SELECT MAX(b.data)
FROM volume_hist_fin b
WHERE b.md5_skuwhse = a.md5_skuwhse
)
GROUP BY whse, sku, a.data
의미가 있습니다. 지금 업데이트를하려고합니다. 이 업데이트 :
UPDATE volume_hist_fin a SET a.dt_exp = '2013-10-09'
WHERE a.data = (
SELECT MAX(b.data)
FROM volume_hist_fin b
WHERE b.md5_skuwhse = a.md5_skuwhse
)
하지만 오류를 받고 있어요 :
1093 "You can't specify target table 'a' for update in FROM clause"
는 하위 쿼리는 동일한 ID 코드를 사용하여 최대의 데이터를 얻을 필요가있어 모든 문제 (md5_skuwhse)
이 업데이트를 어떻게 작동시킬 수 있습니까?
와 함께 할 수 있습니다 -> SET의 dt_exp = '2013년 10월 9일' 데이터 = ( SELECT MAX (b.data) FROM volume_hist_fin UPDATE volume_hist_fin b WHERE b.md5_skuwhse = md5_skuwhse ) – Gayathri
감사합니다. @Gayathri. 당신이 대답하려고하지 않았어, 나는 peterm에서 대답을 사용. 감사합니다 :) – saulob