Hỏi đáp

Chia sẻ kiến thức, cùng nhau phát triển

truyền dữ liệu từ 2 bảng vào bên trong các thuộc tính

11:54 20-12-2017 923 lượt xem 3 bình luận 16:25 25-12-2017

mình muốn tự động truyền dữ liệu tứ 2 bảng vào 1 bảng có các cột tương ứng

HIỆN MÌNH ĐANG LÀM 1 PHẦN MỀM CÓ LIÊN QUAN TỚI VIỆC XUẤT DỮ LIỆU TỪ 2 BẢNG TRONG MS SQL SERVER

ví dụ như sau:
ở trong bảng DocSo (đọc số) lưu các thông tin sau: [DanhBa] ,[GB] ,[DM] ,[Nam] ,[Ky] ,[Dot] ,[May] , [CSCU], [CSMoi]

ở trong bảng ThongtinKH (thông tin khách hàng) lưu các thông tin sau: [DBO] ,[GiaoUoc],[GiaoUoc_cu] ,[KhachHang],[DC1] ,[DC2] ,[PHUONG],[QUAN] ,[CoDHN] ,[TGDM],[MSTHUE],[Hieuluc],[NGAYLAPDAT]
TRONG ĐÓ BẢNG DocSo LIÊN KẾT VỚI BẢNG ThongtinKH bằng thuộc tính DocSo.DanhBa = ThongtinKH.DBO

minh dùng câu lệnh để truy vấn cũng ra được kết quả như trên: SELECT * FROM DocSo INNER JOIN ThongtinKH_Table ON DocSo.DanhBa = ThongtinKH.DBO

nhưng vì lí do lưu trữ dữ liệu mình tạo ra 1 table mới với tên: ChiTietTieuThu gồm các thuộc tính lấy từ 2 bảng như sau: [DanhBa] ,[GB] ,[DM] ,[Nam] ,[Ky] ,[Dot] ,[May] , [CSCU], [CSMoi],[DBO] ,[GiaoUoc],[GiaoUoc_cu] ,[KhachHang],[DC1] ,[DC2] ,[PHUONG],[QUAN] ,[CoDHN] ,[TGDM],[MSTHUE]

vậy thì làm sao truyền dữ liệu từ 2 bảng vào bên trong các thuộc tính được

p/s lượng record là rất lớn (khoảng vài triệu) và số lượng cột nhiều mình không thể load lên datagridview rồi sau đó lưu về thành 1 table trong cơ sở dữ liệu được
kiến thức hạn hẹp mong anh em giúp đỡ

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
Dinh Tona đã bình luận 16:25 25-12-2017

hỏi xong im luôn.. người trả lời còn ngóng hơn người hỏi :v

Bùi Nhật Trường đã bình luận 09:49 23-12-2017

Vấn đề thứ nhất là kết hợp tất cả các thuộc tính của 2 bảng vào một thì mình nghĩ cách tốt nhất là bạn tạo view ChiTietTieuThu từ 2 bảng đó có. Rồi truy vấn qua view đó.

Còn vấn đề thứ hai là số lượng record lớn thì mình nghĩ bạn có thể sử dụng thuật toán phân trang để giảm bớt số lượng bản ghi hiển thị

Dinh Tona đã bình luận 15:04 20-12-2017

Ý là copy toàn bộ dữ liệu khi chạy câu lệnh [SELECT * FROM DocSo INNER JOIN ThongtinKH_Table ON DocSo.DanhBa = ThongtinKH.DBO] vào một table mới đúng không anh ?

Nếu đúng như vậy thì có thể sử dụng query để làm mà:

insert into ChiTietTieuThu ([DanhBa] ,[GB] ,[DM] ,[Nam] ,[Ky] ,[Dot] ,[May] , [CSCU], [CSMoi],[DBO] ,[GiaoUoc],[GiaoUoc_cu] ,[KhachHang],[DC1] ,[DC2] ,[PHUONG],[QUAN] ,[CoDHN] ,[TGDM],[MSTHUE] )

select [DanhBa] ,[GB] ,[DM] ,[Nam] ,[Ky] ,[Dot] ,[May] , [CSCU], [CSMoi],[DBO] ,[GiaoUoc],[GiaoUoc_cu] ,[KhachHang],[DC1] ,[DC2] ,[PHUONG],[QUAN] ,[CoDHN] ,[TGDM],[MSTHUE] 

from DocSo INNER JOIN ThongtinKH_Table ON DocSo.DanhBa = ThongtinKH.DBO

Ngoài ra thì chưa hiểu ý của anh cho lắm !

Câu hỏi mới nhất