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

MYSQL - thêm hoặc chèn giá trị vào một cột tùy thuộc vào việc nó trống hay không

https://dev.mysql.com/doc /refman/5.0/en/insert-on-duplicate.html

Điều đó có nghĩa là trong trường hợp của bạn:

INSERT INTO tablename (id,columnname) VALUES (1,'//string')
  ON DUPLICATE KEY UPDATE columnname=CONCAT(columnname,'//string');

http://sqlfiddle.com/#!9/bd0f4/1

CẬP NHẬT Chỉ để hiển thị cho bạn các tùy chọn của bạn:

http://sqlfiddle.com/#!9/8e61c/1

INSERT INTO tablename (id, columnname) VALUES (1, '//string')
  ON DUPLICATE KEY UPDATE columnname=CONCAT(columnname,'//string');

INSERT INTO tablename (id, columnname) VALUES (1, '//string')
  ON DUPLICATE KEY UPDATE columnname=CONCAT(columnname,'//string');

INSERT INTO tablename (id, columnname) VALUES ((SELECT id FROM tablename t WHERE columnname='blahblah'), '//string')
  ON DUPLICATE KEY UPDATE columnname=CONCAT(columnname,'//string');

INSERT INTO tablename (id, columnname) VALUES ((SELECT id FROM tablename t WHERE id=2), '//string')
  ON DUPLICATE KEY UPDATE columnname=CONCAT(columnname,'//string');

INSERT INTO tablename (id, columnname) VALUES ((SELECT id FROM tablename t WHERE columnname='newone'), '//newone')
  ON DUPLICATE KEY UPDATE columnname=CONCAT(columnname,'//newone');


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Thiết kế cơ sở dữ liệu quan hệ (MySQL)

  2. UTF-8 sự cố PHP / MySQL

  3. Câu lệnh InnoDB SELECT ... FOR UPDATE khóa tất cả các hàng trong bảng

  4. Kết nối với cơ sở dữ liệu MySQL w / C # với tư cách người dùng không phải root?

  5. Mô hình danh sách liền kề so với Mô hình tập hợp lồng nhau cho dữ liệu phân cấp MySQL?