2015-05-17 10 views
5

Tôi đang ghi dữ liệu vào cơ sở dữ liệu sqlite, nhưng vì tập dữ liệu rất lớn, tôi chia quá trình thành năm phần. Kết quả là, tôi viết năm cơ sở dữ liệu sqlite khác nhau cùng một lúc, mỗi tên có cùng tên cột và cuối cùng, tôi muốn nối năm bảng trong năm cơ sở dữ liệu với nhau thành một bảng. Cách để làm điều này là gì?sqlite chắp thêm hai bảng từ hai cơ sở dữ liệu có lược đồ giống hệt nhau

Trả lời

6

Bạn có thể sử dụng ATTACH để làm cho nội dung của một tập tin cơ sở dữ liệu truy cập trong cùng một kết nối: (. Cơ sở dữ liệu chính là luôn luôn gọi main; mở một kết nối cơ sở dữ liệu mới là tương đương với ATTACH "filename" AS main)

ATTACH "/some/where/db2.sqlite" AS db2; 
INSERT INTO main.MyTable SELECT * FROM db2.MyTable; 

1

Bạn có thể sử dụng UNION hoặc UNION ALL để hợp nhất 2 hoặc nhiều truy vấn.

Cái gì như:

SELECT Field1, Field2, Field3 FROM Table1 
UNION 
SELECT Field1, Field2, Field3 FROM Table2 

Bạn có thể sử dụng một INSERT INTO NewTableName (SELECT ...) để tạo ra một bảng mới từ UNION đó.

Các ALL biến thể của mệnh đề UNION bao gồm các bản ghi trùng lặp (cuối cùng).

Các vấn đề liên quan