Mình có làm về 1 phần là backup data vào 1 table khác và vô tình mình vướng phải vấn đề muốn lấy hết dữ liệu của table A qua table B. Và mình quên mất lý thuyết insert SQL. Nên mình hướng dẫn lại cho các bạn.

Postgres copy data giữa các tables - copy data của table B qua table A

2021-08-08 1291 lượt xem

Vấn đề đưa ra

Mình có table A với các thuộc tính string, request, parser, json và mình muốn copy data của table A qua 1 table B khác nhằm mục đích là backup dữ liệu. 

Câu hỏi là: Làm cách nào để mình có thể sao chép dữ liệu từ table A vào table B, lưu ý rằng cột id sẽ giữ nguyên.

Giải quyết vấn đề

Trong Sql sẽ có 1 kiểu insert từ 1 table khác kiểu vầy: 

insert into tableA( cột1, cột2 ) select cột1,cột2 from tableB;

Vậy để app dụng cho việc backup hết dữ liệu từ bảng A qua bảng B ta làm như sau: 

 insert into table_to_data( string, request, parser, json ) select 
string, request, parser, json from table_from_bakup;

Nhưng làm xong bạn có lẽ sẽ thấy data bị ngược. Bạn nên thêm order by vào để cho data được sắp xếp lại.

 insert into table_to_data( string, request, parser, json ) select 
string, request, parser, json from table_from_bakup order by id asc;

nếu bạn muốn copy cả id thì cứ select cả id ra thôi 😄 

Xong. Chúc các bạn thành công ...................... nhân  

những tag
bài viết trong chủ đề