Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

FUNCTION SUM không tồn tại

Nhìn vào trình kích hoạt:

UPDATE Orders Set Paid =(Select SUM(Amount) From Payments AS p Where p.OrderID  = Orders.ID),PayMethod =new.PayMethod  WHere Orders.id = new.OrderID;

MySQL không chấp nhận khoảng trắng giữa tên hàm và dấu ngoặc đơn (trừ khi bạn đã đặt SQL_MODE =IGNORE_SPACE nhưng điều đó mang lại cho bạn các tác dụng phụ không mong muốn khác)

Bạn có thể kiểm tra cài đặt SQL_MODE bằng cách chạy:

SHOW GLOBAL VARIABLES LIKE 'SQL_MODE';

Tài liệu MySQL về điều này: liên kết

Một số ví dụ:

mysql> select sum(5);
+--------+
| sum(5) |
+--------+
|      5 |
+--------+
1 row in set (0.00 sec)

mysql> select sum (5);
ERROR 1305 (42000): FUNCTION sum does not exist

Giải pháp:Loại bỏ khoảng trống

UPDATE Orders Set Paid =(Select SUM(Amount) From Payments AS p Where p.OrderID  = Orders.ID),PayMethod =new.PayMethod  WHere Orders.id = new.OrderID;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nhân bản / Sao chép bản ghi trong cùng một bảng MySQL

  2. làm cách nào để xuất cơ sở dữ liệu mysql bằng ssh?

  3. Đăng nhập NHẬN hoặc ĐĂNG?

  4. Ngăn chặn truy vấn bộ nhớ đệm trong MySQL

  5. MySql, kết hợp cột ngày và giờ thành một dấu thời gian