Nhờ giúp đỡ lấy giữ liệu từ nhiều bảng với Microsoft Query (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

nicktinhban89

Thành viên mới
Tham gia
11/6/08
Bài viết
23
Được thích
1
Kính thưa các bác, e đang cần lấy dữ liệu từ SQL để đưa ra pivotTable để làm báo cáo ạ.
Cấu trúc của 3 bảng e để như hình 1 ạ Hình 1.jpg
Ngày số liệu được sếp theo từng ngày ạ và bjo là nhu cầu của em:

E cần lọc ra so du quy doi các khách hàng dựa theo cif trong bảng LNCUSMAN thỏa mãn các điều kiện sau: BDS = '199', ngày số liệu: từ 01/01/2017 đến 06/02/2017
Trên bảng cdcusman cấu trúc tương tự như LNCUSMAN và e cần lấy các số dư của bảng này theo cif của khách hàng trong bảng LNCUSMAN
Còn bảng svfeeman thì cột MABDS sẽ tương ứng với cột BDS trên LNCUSMAN, cif trên LNCUSMAN thì trên svfeeman CIFKH và e cần lấy StienphiQD trên bảng này đưa theo cif trong bảng LNCUSMAN. Do dữ liệu là một khoảng thời gian nên e cần lấy số tổng. Hjc, nhu cầu của e là vậy nhưng khó diễn tả quá mà lại không biết làm sao để gửi file lên cho các bác được, Mong các bác có chỉ giáo tận tình ạ. E xin trân thành cảm ơn.
PS: E thuộc loại gà mờ nên mong các bác cầm tay chỉ việc ạ!
 
này bác phải làm 3 câu sql thôi


sql của vế 1

select *
from LNCUSMAN
where BDS = '199' and NGAYSOLIEU>='2017/01/01' and NGAYSOLIEU<='2017/02/06'

-------------------------------------------------------
vế 2

SELECT *
FROM cdcusman
WHERE cif IN (SELECT cif from LNCUSMAN )

------------------------------------------------------------
vế 3

select *
from svfeeman
where MABDS in (select BDS from LNCUSMAN) and CIFKH in (select cif from LNCUSMAN)
 
Upvote 0
Kính thưa các bác, e đang cần lấy dữ liệu từ SQL để đưa ra pivotTable để làm báo cáo ạ.
Cấu trúc của 3 bảng e để như hình 1 ạ View attachment 171455
Ngày số liệu được sếp theo từng ngày ạ và bjo là nhu cầu của em:

E cần lọc ra so du quy doi các khách hàng dựa theo cif trong bảng LNCUSMAN thỏa mãn các điều kiện sau: BDS = '199', ngày số liệu: từ 01/01/2017 đến 06/02/2017
Trên bảng cdcusman cấu trúc tương tự như LNCUSMAN và e cần lấy các số dư của bảng này theo cif của khách hàng trong bảng LNCUSMAN
Còn bảng svfeeman thì cột MABDS sẽ tương ứng với cột BDS trên LNCUSMAN, cif trên LNCUSMAN thì trên svfeeman CIFKH và e cần lấy StienphiQD trên bảng này đưa theo cif trong bảng LNCUSMAN. Do dữ liệu là một khoảng thời gian nên e cần lấy số tổng. Hjc, nhu cầu của e là vậy nhưng khó diễn tả quá mà lại không biết làm sao để gửi file lên cho các bác được, Mong các bác có chỉ giáo tận tình ạ. E xin trân thành cảm ơn.
PS: E thuộc loại gà mờ nên mong các bác cầm tay chỉ việc ạ!
thử thế này xem có đúng ý ko?
SELECT A.CIF, SUM(B.SODUQD) as TONGDUQD, SUM(B.SODU) as Tongsodu, SUM(C.StienphiQD) as TONGPHIQD
FROM LNCUSMAN A
JOIN cdcusman B ON B.CIF = A.CIF AND A.BDS = B.BDS
JOIN svfeeman C ON C.CIFKH = A.CIF AND C.MABDS = A.BDS
WHERE A.BDS = 199 AND A.NGAYSOLIEU BETWEEN '2017-01-01' AND '2017-02-06'
group by a.cif
 
Lần chỉnh sửa cuối:
Upvote 0
này bác phải làm 3 câu sql thôi


sql của vế 1

select *
from LNCUSMAN
where BDS = '199' and NGAYSOLIEU>='2017/01/01' and NGAYSOLIEU<='2017/02/06'

-------------------------------------------------------
vế 2

SELECT *
FROM cdcusman
WHERE cif IN (SELECT cif from LNCUSMAN )

------------------------------------------------------------
vế 3

select *
from svfeeman
where MABDS in (select BDS from LNCUSMAN) and CIFKH in (select cif from LNCUSMAN)
Nếu làm theo 3 vế thì cả 3 câu truy vấn này đều sai
vế 1: Ko có SODUQD trong bang lncusman
Vế 2: chỉ lấy 2 cột Cif và SODU
Vế 3: Tính tổng nên phải có group by
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom