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

MySQL INSERT IF (câu lệnh if tùy chỉnh)

INSERT INTO TABLE
SELECT value_for_column1, value_for_column2, ...
FROM wherever
WHERE your_special_condition

Nếu không có hàng nào được trả về từ vùng chọn (vì điều kiện đặc biệt của bạn là sai) thì không có chèn nào xảy ra.

Sử dụng lược đồ của bạn từ câu hỏi (giả sử id của bạn cột là auto_increment ):

insert into orders (product_id, qty)
select 2, 20
where (SELECT qty_on_hand FROM products WHERE id = 2) > 20;

Thao tác này sẽ không chèn hàng nếu không có đủ hàng trong tay, nếu không, nó sẽ tạo ra hàng đơn đặt hàng.

Ý kiến ​​hay đấy btw!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. CHỌN * TỪ nhiều bảng. MySQL

  2. Làm thế nào để tìm kiếm nhiều cột trong MySQL?

  3. Cách chuyển đổi ngày UTC sang múi giờ địa phương trong MySql Chọn truy vấn

  4. MySQL - Sử dụng COUNT (*) trong mệnh đề WHERE

  5. Các kết nối máy chủ MySQL của tôi có được mã hóa và an toàn không?