Tôi đang cố chèn hàng vào bảng 'Dữ liệu' nếu chúng chưa tồn tại.SQL INSERT thiếu hàng từ Bảng A đến Bảng B
Đối với mỗi hàng xuất $, tôi cần mã để kiểm tra 'Dữ liệu' cho các hàng khớp với cả Thời gian (ngày) và ID (int) - nếu các hàng không tồn tại thì chúng sẽ được tạo.
Tôi khá chắc chắn phần 'NOT EXISTS' của tôi là sai - cách tốt nhất để làm điều này là gì? Cảm ơn tất cả sự giúp đỡ của bạn
IF NOT EXISTS (SELECT * FROM Data, Export$ WHERE Data.ID = Export$.ID AND Data.Period = Export$.Period)
INSERT INTO Data (Period, Performance, ID)
SELECT Period, [Return], [ID] FROM Export$
Thoạt nhìn của bạn không tồn tại một phần trông ok. Bạn nghĩ gì sai với nó? –
Có gì sai là điều này sẽ ngăn chặn chèn bất kỳ hàng nào nếu có (có thể có các hàng khác) khớp nhau (có thể có nhiều hàng để nhập). – GilM
Ồ! Bạn đang cố chèn "bản ghi thiếu" * từ * 'Xuất $ '? Nếu có, hãy tra cứu 'MERGE'. Ngoài ra, ',' giữa dữ liệu và xuất khẩu có một CROSS JOIN - tôi khuyên bạn nên chống lại cú pháp như vậy. –