subquery ตารางเดียวกัน
เราไม่สามารถ subquery ตารางเดียวกันได้เหรอ
เช่น
INSERT INTO balance (bal_date,bal_cost) VALUE
('2010-09-25' ,(SELECT bal_cost AS last FROM balance WHERE MONTH(bal_date)='09' ORDER BY bal_id DESC LIMIT 1))
มันโชว์ error ว่า
#1093 - You can't specify target table 'balance' for update in FROM clause
เราเลยลองเปลี่ยนเป็น
INSERT INTO balance (bal_date,bal_cost) VALUE
('2010-09-25' ,(SELECT bg_cost AS last FROM budget WHERE MONTH(bg_date)='09' ORDER BY bg_id DESC LIMIT 1))
insert ได้ปกติ
##ตาราง balance และ budget โครงสร้างเดียวกันทุกอย่าง
INSERT INTO balance (bal_date,bal_cost) VALUE
('2010-09-25' ,(SELECT b2.bal_cost AS last FROM balance AS b2 WHERE MONTH(b2.bal_date)='09' ORDER BY b2.bal_id DESC LIMIT 1))
ขอบคุณจ้าา