Tôi đang cố gắng chèn bản ghi nếu tổng của 3 cột người dùng từ 2 bảng vượt quá một hằng số.MYSQL INSERT IF SUMs> CONSTANT
Tôi đã tìm kiếm khắp nơi, tìm thấy bạn không thể đặt các biến dùng trong IF
s, WHERE
's, vv Tìm thấy bạn không thể đặt SUM
s trong IF
s, WHERE
' s vv Tôi đang ở một Tổng thiệt hại. Dưới đây là một ví dụ về mã xấu trước đây của tôi trước không thành công cố gắng sử dụng SUM
s trong WHERE
s, nếu nó giúp:
SELECT SUM(num1) INTO @mun1 FROM table1 WHERE user = '0';
SELECT SUM(num2) INTO @mun2 FROM table1 WHERE user = '0';
SELECT SUM(num3) INTO @mun3 FROM table2 WHERE column1 = 'd' AND user = '0';
SET @mun4 = @mun1 - @mun2 - @mun3;
INSERT INTO table2 (user, column1, column2) VALUES ('0', 'd', '100') WHERE @mun4 >= 100;
Thank-bạn rất nhiều vì trả lời nhanh chóng của bạn. Bây giờ, tôi nhận được "# 1064 - Bạn có lỗi trong cú pháp SQL của bạn; hãy kiểm tra hướng dẫn tương ứng với phiên bản máy chủ MySQL của bạn cho cú pháp đúng để sử dụng gần 'WHERE (SELECT SUM (..." tại WHERE đầu tiên Nó tương tự như các lỗi mà tôi đã nhận được trong các lần thử trước đây của tôi –
@ user1382306 Tôi đã chỉnh sửa câu trả lời một chút để thêm 'từ kép' - thử ngay bây giờ – Bohemian