Vuong Le
Vuong Le
Thảo luận 4 thảo luận
Vỗ tay 0 vỗ tay
Lượt xem 152 lượt xem

Nhờ giải đáp 1 Em chưa thực sự hiểu khi tạo relationship giữa 2 data table

Nhờ thầy giải đáp.

1. Em chưa thực sự hiểu khi tạo relationship giữa 2 data table thì kết quả trả về sai  như thế nào.

2. Như trong ảnh tạo snowflake dưới, thì bảng 2 là data table còn bảng 3 là lookup table phải không ạ? Theo như thầy có giảng thì việc đánh giá 1 bảng là data hay lookup table là tương đối, nếu vậy thì bảng 2 là data table có đúng không vì bảng này toàn text chứ không phải dạng number.

Em cảm ơn

Thảo luận 4 câu trả lời
Lượt xem 152 lượt xem
Vỗ tay vỗ tay
Vuong Le 17:01 - Jan 25, 2022

Hi bạn, 

- Data Table thường là bảng chứa dữ liệu số, số ở đây là số sử dụng ở trường value trong các biều đồ. Ví dụ điển hình là bảng Sale, bảng Return, chúng ta có dữ liệu về Số lượng bán, Doanh số bán, Số lượng hàng bị trả lại ... Khi làm báo cáo, số liệu thường lấy từ bảng này. 

- Lookup Table thường là bảng thông tin, do đó nó thường chứa dữ liệu dạng text chứ ko phải cứ chứa dữ liệu text là bảng Lookup, để định nghĩa là bảng Lookup thì yếu tố quan trọng là nó chứa thông tin bổ sung. Ví dụ bảng Product, về số liệu chúng ta có bảng Sale - nơi có chi tiết giao dịch theo mã sản phẩm, mã KH ... sau đó chúng ta cần biết thông tin chi tiết về sản phẩm như màu sắc, công dụng, nơi sản xuất ... thì ta liên kết tới bảng Lookup qua Mã sản phẩm. 

- Kết nối giữa bảng Data và bảng Lookup thường là Many-To-One, nghĩa là bảng Data có trường lặp key có giá trị lặp lại, còn bảng Lookup có trường làm key có giá trị duy nhất. Ví dụ bảng Sale là có mã sản phẩm lặp lại vì có nhiều giao dịch, 1 sản phẩm được bán nhiều lần - còn ở bảng Product thì mỗi mã sản phẩm chỉ là 1 dòng duy nhất. Do đó khi Power BI tham chiếu mới tìm được. Nguyên tắc của nó là tham chiếu từ bảng Data về bảng Lookup, ví dụ mã sản phẩm 00001 xuất hiện nhiều lần trên bảng Sale, cần tham chiếu để bổ xem nó màu gì, thì cần tham chiếu về đúng mã 00001 trên bảng Product, nếu bảng Product là bảng Lookup mã 00001 chỉ xuất hiện 1 lần thì đúng logic. Còn nếu 2 bảng cùng là Data table, ví dụ bảng Sale và bảng Return, thì kết nối là Many-to-Many, ở bảng Sale mã 00001 xuất hiện nhiều lần, ở bảng Return mã 00001 cũng xuất hiện nhiều lần, nên nó không tham chiếu được. Nếu bạn dùng Excel thì nguyên tắc tham chiếu giống hàm Vlookup.

- Trong hình thì bảng 1 là bảng data, còn bảng 2 3 4 đều là lookup.


Vỗ tay vỗ tay
Vuong Le 14:01 - Jan 27, 2022

Vậy là có thể tạo relationship giữa 2 lookup table phải không ạ?

Vỗ tay vỗ tay
Vuong Le 08:01 - Jan 28, 2022

Được bạn à, relationship giữa 2 bảng lookup thì được vì nó là mối quan hệ One-to-One (trường làm key ở cả 2 bảng đều là trường chứa các giá trị riêng biệt), nên khi tìm kiếm sẽ ra được kết quả

Vỗ tay vỗ tay
Vuong Le 18:04 - Apr 18, 2024

Chào Thầy,

Về 2 bảng data table tạo relationship với nhau, ví dụ mã 00001 xuất hiện nhiều lần ở sales và nhiều lần ở return, thì nếu tạo relationship và lấy theo giá trị Sum của value thì có trả ra kết quả đúng tổng số sales và tổng số return không ạ?

Vỗ tay vỗ tay
Câu hỏi liên quan
© 2020 - Bản quyền của Công Ty Cổ Phần Công Nghệ Giáo Dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở Kế hoạch và Đầu tư TP. Hà Nội
Giấy phép mạng xã hội số: 588, cấp bởi Bộ Thông tin và Truyền thông