Blog

Khác biệt SAMPERIODLASTYEAR() và PARALLELPERIOD()

SAMPERIODLASTYEAR()

SAMPERIDOLASTYEAR trả về bảng chứa cột ngày là ngày cùng kỳ năm trước (cùng ngày, cùng tháng nhưng được dịch chuyển lùi về 1 năm so với ngày được chỉ định).

Cấu trúc

SAMPERIODLASTYEAR (<date>)

Trong đó : <date> : cột chứa giá trị thời gian

Ví dụ:

Để tính doanh thu bán hàng của cùng kỳ năm trước bạn có thể viết như sau:

PY Sale = CALCULATE(SUM(Sales[Revenue]), SAMEPERIODLASTYEAR(‘DATE'[Date]))

PARALLELPERIOD()

PARALLELPERIOD trả về bảng có chứa cột ngày biểu thị thời gian song song với các ngày trong cột ngày đã được chỉ định, các ngày có thể dịch chuyển về quá khứ hoặc đến tương lai .

Cấu trúc

PARALLELPERIOD (<date>, <number_of_intervals>, <interval>)

Trong đó:

<date>: cột chứa giá trị thời gian
<number_of_intervals>: số nguyên chỉ định số khoảng thời gian được cộng vào hoặc trừ ra. <number_of_interval> âm (lùi về quá khứ), dương (chuyển tới tương lai)
<interval>: khoảng thời gian để thay đổi ngày (giá trị khoảng thời gian bao gồm: tháng, quý, năm)

Ví dụ: Cũng với ví dụ như trên để tính doanh số bán hàng của cùng kỳ năm trước sử dụng hàm PARALELPERIOD thay thế hàm SAMPERIODLASTYEAR bạn có thể viết như sau:

PARALLELPERIOD (PY Sale) = CALCULATE(SUM(Sales[Revenue]), PARALLELPERIOD(‘DATE'[Date], -1, YEAR))

Ta thấy qua hai ví dụ trên, khi tính doanh thu bán hàng của năm trước, hàm SAMPERIODLASTYEAR và hàm PARALLELPERIOD đều cho ra kết quả giống nhau. Vậy giữa 2 hàm này có sự khác biệt gì? Các bạn hãy cùng tìm hiểu bên dưới nhé!

SỰ KHÁC BIỆT GIỮA SAMPERIODLASTYEAR() VÀ PARALLELPERIOD()

  • Hàm SAMPERIODLASTYEAR và hàm PARALLELPERIOD không dùng với mục đích trả về kết quả trực tiếp mà dùng để lồng bên trong hàm Calculate với vai trò làm điều kiện để tính toán.
  • PARALLELPERIOD cung cấp cho bạn tùy chọn khoảng thời gian bạn muốn lùi hoặc chuyển tiếp, trong khi đó SAMPERIODLASTYEAR chỉ trả về cho bạn duy nhất khoảng thời gian của cùng kỳ năm trước.
  • Tùy thuộc vào ngữ cảnh bộ lọc bạn có thể nhận được kết quả từ hai hàm này. Hai ví dụ trên cho ta cùng một kết quả trong bối cảnh bộ cấp năm, không có nghĩa là hai hàm này hoàn toàn giống nhau. Hãy mở rộng bộ lọc xuống tháng và xem bảng ví dụ bên dưới bạn sẽ thấy rõ hơn về sự khác biệt của hai hàm này:

Như ví dụ ta thấy Samperiodlastyear trả về cho chúng ta doanh số của từng tháng theo năm 2012, còn hàm Parallelperiod chỉ trả về doanh số bán hàng cho cả năm 2012.Vì vậy, tùy thuộc ngữ cảnh bộ lọc mà bạn có thể chọn hàm sử dụng cho thích hợp.

Leave a Reply

Your email address will not be published. Required fields are marked *