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

Chèn MySQL vào từ Cơ sở dữ liệu này trong Cơ sở dữ liệu khác

Truy vấn của bạn sẽ như sau:

INSERT INTO newDatabase.table1 (Column1, Column2) 
SELECT column1, column2 FROM oldDatabase.table1;

CẬP NHẬT

Vì câu trả lời này đang được chú ý nhiều hơn tôi thậm chí dự đoán, tôi nên mở rộng câu trả lời này. Trước hết, nó có thể không rõ ràng từ chính câu trả lời, nhưng các cột không cần phải có tên giống nhau. Vì vậy, sau đây cũng sẽ hoạt động (giả sử rằng các cột tồn tại trong bảng tương ứng của chúng):

INSERT INTO newDatabase.table1 (Column1, Column2) 
SELECT SomeOtherColumn, MoreColumns FROM oldDatabase.table1;

Hơn nữa, chúng thậm chí không cần phải là cột thực trong bảng. Một trong những ví dụ để chuyển đổi dữ liệu mà tôi sử dụng khá thường xuyên là:

INSERT INTO newDatabase.users (name, city, email, username, added_by) 
SELECT CONCAT(first_name, ' ', last_name), 'Asgard', CONCAT(first_name,'@gmail.com'), CONCAT(first_name,last_name), 'Damir' FROM oldDatabase.old_users;

Vì vậy, bây giờ có thể rõ ràng hơn, quy tắc là, miễn là truy vấn CHỌN trả về cùng số cột mà truy vấn CHÈN cần, thì nó có thể được sử dụng thay cho GIÁ TRỊ.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chuyển đổi dự phòng tự động sao chép không đồng bộ trong MySQL 8.0.22

  2. Sử dụng SQL để xác định số liệu thống kê về số lượng từ của một trường văn bản

  3. PHP &mySQL:Năm 2038 Lỗi:Nó là gì? Làm thế nào để giải quyết nó?

  4. SQL - Cập nhật nhiều bản ghi trong một truy vấn

  5. Nhóm theo tháng và năm trong MySQL