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

sql if trong câu lệnh insert mà không có select

Tôi cho rằng bảng của bạn có tên là tbl.

INSERT INTO tbl (campoX ) 
    SELECT 'X' FROM DUAL 
    WHERE NOT EXISTS( 
                      SELECT campoX from tbl 
                      WHERE campoX ='X'
                     );

DUAL hoàn toàn là để thuận tiện cho những người yêu cầu rằng tất cả các câu lệnh SELECT phải có FROM và có thể có các mệnh đề khác. MySQL có thể bỏ qua các mệnh đề. MySQL không yêu cầu TỪ KÉP nếu không có bảng nào được tham chiếu.

Như một số đề cập khác, bạn có thể sử dụng INSERT IGNORE ở đây NẾU campoX của bạn là trường hợp nhất Hoặc khóa chính.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Trả lời nhận xét nhiều tầng:Hiển thị và Lưu trữ

  2. SailsJS - Làm thế nào để chỉ định độ dài thuộc tính chuỗi mà không bị lỗi khi tạo bản ghi?

  3. Sắp xếp một cột VARCHAR dưới dạng FLOAT bằng cách sử dụng toán tử CAST không hoạt động trong MySQL

  4. Tìm hiểu cách nhập dữ liệu Excel vào cơ sở dữ liệu MySQL

  5. Các chữ cái Hy Lạp trong PHP MySQL hiển thị như thế nào ???? điểm