Các loại dữ liệu trong Mẫu Dữ liệu

Trong Mô hình Dữ liệu, mỗi cột có một kiểu dữ liệu liên quan, xác định kiểu dữ liệu mà cột có thể chứa: số nguyên, số thập phân, văn bản, dữ liệu tiền tệ, ngày và thời gian, v.v. Kiểu dữ liệu cũng xác định kiểu phép tính mà bạn có thể thực hiện với cột và cần bao nhiêu bộ nhớ để lưu các giá trị trong cột.

Nếu bạn đang dùng bổ trợ Power Pivot, bạn có thể thay đổi kiểu dữ liệu của cột. Bạn có thể cần thực hiện việc này nếu cột ngày được nhập vào dưới dạng chuỗi nhưng bạn cần dữ liệu này có kiểu khác. Để biết thêm thông tin, hãy xem Đặt kiểu dữ liệu của cột trong Power Pivot.

Trong bài viết này


Tóm tắt loại dữ liệu

Bảng sau liệt kê các kiểu dữ liệu được hỗ trợ trong Mô hình Dữ liệu. Khi bạn nhập dữ liệu hoặc dùng giá trị trong công thức, ngay cả khi nguồn dữ liệu gốc chứa một kiểu dữ liệu khác, dữ liệu được chuyển đổi thành một trong các kiểu dữ liệu này. Giá trị kết quả của công thức cũng dùng các kiểu dữ liệu này.

Loại dữ liệu trong Excel Loại dữ liệu trong DAX Mô tả
Số Nguyên Số nguyên 64 bit (tám byte) 1, 2 Các số không có dấu phẩy thập phân. Số nguyên có thể là số dương hoặc âm, nhưng phải là số nguyên từ -9,223,372,036,854,775,808 (-2^63) đến 9,223,372,036,854,775,807 (2^63-1).
Số Thập phân Số thực 64 bit (tám byte) 1, 2

Số thực là số có thể có dấu phẩy thập phân. Số thực trải trên một phạm vi rộng các giá trị:

Giá trị âm từ -1.79E +308 đến -2.23E -308

Không (0)

Các giá trị dương từ 2,23E -308 tới 1,79E + 308

Tuy nhiên, số chữ số có nghĩa được giới hạn đến 15 chữ số thập phân.

ĐÚNG/SAI Boolean Giá trị phải là Đúng hoặc Sai.
Văn bản Chuỗi

Chuỗi dữ liệu ký tự Unicode. Có thể là chuỗi, số và ngày được biểu diễn ở định dạng văn bản.

Độ dài chuỗi tối đa là 268.435.456 ký tự Unicode (256 mega ký tự) hoặc 536.870.912 byte.

Ngày Ngày/giờ

Ngày và giờ ở dạng biểu thị ngày-giờ được chấp nhận.

Ngày hợp lệ là tất cả các ngày sau ngày 1 tháng 1 năm 1900.

Tiền tệ Tiền tệ Loại dữ liệu tiền tệ cho phép các giá trị từ -922.337.203.685.477,5808 đến 922.337.203.685.477,5807 với bốn chữ số thập phân có độ chính xác cố định.
Không áp dụng Giá trị trống Giá trị trống là kiểu dữ liệu của DAX đại diện và thay thế giá trị null của SQL. Bạn có thể tạo giá trị trống bằng cách dùng hàm BLANK và kiểm tra giá trị trống bằng cách dùng hàm logic ISBLANK.

1 Công thức DAX không hỗ trợ các kiểu dữ liệu nhỏ hơn các kiểu được liệt kê trong bảng.

2 Nếu bạn tìm cách nhập dữ liệu có giá trị số rất lớn, thao tác nhập có thể thất bại với lỗi sau:

Lỗi cơ sở dữ liệu trong bộ nhớ: Cột '<tên cột>' của bảng '<tên bảng>' chứa giá trị '1.7976931348623157e+308' không được hỗ trợ. Thao tác đã bị hủy.

Lỗi này xảy ra vì Power Pivot dùng giá trị đó để biểu thị giá trị null. Những giá trị trong danh sách sau đây đồng nghĩa với giá trị null:

Giá trị
9223372036854775807
-9223372036854775808
1,7976931348623158e+308
2,2250738585072014e-308

Xoá giá trị khỏi dữ liệu của bạn và thử nhập lại.

Loại Dữ liệu Bảng

DAX dùng kiểu dữ liệu bảng trong nhiều hàm, như tổng hợp và tính toán thời gian thông minh. Một số hàm yêu cầu tham chiếu đến bảng; các hàm khác trả lại bảng có thể được sử dụng làm dữ liệu đầu vào cho các hàm khác. Trong một số hàm yêu cầu dữ liệu đầu vào dạng bảng, bạn có thể chỉ định một biểu thức được định trị thành giá trị bảng; một số hàm cần tham chiếu đến bảng cơ sở. Để biết thông tin về yêu cầu của các hàm cụ thể, xem Tham khảo Bảng DAX.

Chuyển đổi loại dữ liệu ẩn và rõ ràng trong công thức DAX

Mỗi hàm DAX có các yêu cầu cụ thể về kiểu dữ liệu được sử dụng làm dữ liệu đầu vào và đầu ra. Ví dụ, một số hàm yêu cầu số nguyên cho một số đối số và kiểu ngày cho các đối số khác; các hàm khác yêu cầu văn bản hoặc bảng.

Nếu dữ liệu trong cột do bạn chỉ định là đối số không tương thích với kiểu dữ liệu do hàm đó yêu cầu, trong nhiều trường hợp DAX sẽ trả về lỗi. Tuy nhiên, khi có thể DAX sẽ tìm cách chuyển đổi ngầm dữ liệu sang kiểu dữ liệu yêu cầu. Ví dụ:

  • Bạn có thể nhập ngày ở dạng chuỗi và DAX sẽ phân tích cú pháp chuỗi đó và thay chuỗi đó thành một trong các định dạng ngày và giờ của Windows.
  • Bạn có thể thêm TRUE + 1 và nhận kết quả 2, vì TRUE được chuyển đổi hoàn toàn thành số 1 và tác vụ 1+1 được thực hiện.
  • Nếu bạn cộng các giá trị trong hai cột và một giá trị ngẫu nhiên được biểu diễn dưới dạng văn bản ("12") và giá trị còn lại dưới dạng số (12), DAX sẽ chuyển đổi ngầm chuỗi thành số và sau đó thực hiện phép cộng cho kết quả dạng số. Biểu thức sau trả lại kết quả 44: = "22" + 22
  • Nếu bạn tìm cách ghép hai số, Excel sẽ biểu diễn chúng dưới dạng chuỗi và sau đó ghép. Biểu thức sau trả lại kết quả "1234": = 12 & 34

Bảng sau tóm tắt các phép chuyển đổi dữ liệu ngầm được thực hiện trong các công thức. Excel thực hiện chuyển đổi ngầm mỗi khi có thể, theo yêu cầu của phép tính đã xác định.

Bảng Chuyển đổi Dữ liệu ẩn

Toán tử sẽ xác định kiểu chuyển đổi được thực hiện, và sẽ tính toán các giá trị trước khi thực hiện phép tính yêu cầu. Các bảng này liệt kê các toán tử và cho biết phép chuyển đổi được thực hiện cho từng kiểu dữ liệu trong cột khi được ghép cặp với kiểu dữ liệu trong hàng giao cắt.

 Ghi chú    Kiểu dữ liệu văn bản không được bao gồm trong những bảng này. Khi một số được biểu thị ở định dạng văn bản, trong một vài trường hợp Power Pivot sẽ tìm cách xác định kiểu số và biểu thị nó dưới dạng số.

Phép cộng (+)
Toán tử (+) SỐ NGUYÊN TIỀN TỆ THỰC Ngày/giờ
SỐ NGUYÊN SỐ NGUYÊN TIỀN TỆ THỰC Ngày/giờ
TIỀN TỆ TIỀN TỆ TIỀN TỆ THỰC Ngày/giờ
THỰC THỰC THỰC THỰC Ngày/giờ
Ngày/giờ Ngày/giờ Ngày/giờ Ngày/giờ Ngày/giờ

Ví dụ: nếu một số thực được sử dụng trong thao tác bổ sung kết hợp với dữ liệu TIỀN TỆ, cả hai giá trị đều được chuyển đổi thành THỰC và kết quả được trả lời là THỰC.

Phép trừ (-)

Trong bảng sau đây, tiêu đề hàng là số trừ (bên trái) và tiêu đề cột là số bị trừ(bên phả).

Toán tử(-) SỐ NGUYÊN TIỀN TỆ THỰC Ngày/giờ
SỐ NGUYÊN SỐ NGUYÊN TIỀN TỆ THỰC THỰC
TIỀN TỆ TIỀN TỆ TIỀN TỆ THỰC THỰC
THỰC THỰC THỰC THỰC THỰC
Ngày/giờ Ngày/giờ Ngày/giờ Ngày/giờ Ngày/giờ

Ví dụ nếu ngày được sử dụng trong toán tử phép trừ cùng với bất kỳ loại dữ liệu nào khác, cả hai giá trị đều được chuyển đổi thành ngày và giá trị trả lại cũng là ngày.

 Ghi chú    Mẫu dữ liệu cũng hỗ trợ toán tử đơn phân - (âm) nhưng toán tử này không thay đổi loại dữ liệu toán hạng.

Phép nhân (*)
Toán tử (*) SỐ NGUYÊN TIỀN TỆ THỰC Ngày/giờ
SỐ NGUYÊN SỐ NGUYÊN TIỀN TỆ THỰC SỐ NGUYÊN
TIỀN TỆ TIỀN TỆ THỰC TIỀN TỆ TIỀN TỆ
THỰC THỰC TIỀN TỆ THỰC THỰC

Ví dụ: nếu một số nguyên được kết hợp với một số thực trong toán tử nhân, cả hai số đều được chuyển đổi thành số thực và giá trị trả lại cũng là THỰC.

Phép chia (/)

Trong bảng sau đây, tiêu đề hàng là tử số và tiêu đề cột là mẫu số.

Toán tử (/)

(Hàng/Cột)

SỐ NGUYÊN TIỀN TỆ THỰC Ngày/giờ
SỐ NGUYÊN THỰC TIỀN TỆ THỰC THỰC
TIỀN TỆ TIỀN TỆ THỰC TIỀN TỆ THỰC
THỰC THỰC THỰC THỰC THỰC
Ngày/giờ THỰC THỰC THỰC THỰC

Ví dụ: nếu một số nguyên được kết hợp với một giá trị TIỀN TỆ trong phép chia, thì cả hai giá trị đều được chuyển đổi thành số thực và kết quả cũng là số thực.

Toán tử so sánh

Trong các biểu thức so sánh, giá trị Boolean được coi là lớn hơn giá trị chuỗi và giá trị chuỗi được coi là lớn hơn giá trị số hoặc ngày/thời gian; các giá trị số và ngày/thời gian được coi là có cùng hạng. Không có thao tác chuyển đổi ngầm được thực hiện giữa các giá trị Boolean hay chuỗi; BLANK hoặc giá trị trống được chuyển đổi thành 0/""/false tùy thuộc vào kiểu dữ liệu của giá trị được so sánh còn lại.

Biểu thức DAX sau đây minh họa hành vi này:

        =
        IF(
        FALSE()>"
        true","Expression
         is true", "Expression is false"), returns "Expression is true"
      
        =
        IF(
        "12">12,"Expression is true", "Expression is false"), returns "Expression is true"
        .
      
        =
        IF(
        "12"=12,"Expression is true", "Expression is false"), returns "Expression is false"
      

Các chuyển đổi được thực hiện hoàn toàn cho loại số hoặc ngày/giờ được mô tả trong bảng sau đây:

Toán tử So sánh SỐ NGUYÊN TIỀN TỆ THỰC Ngày/giờ
SỐ NGUYÊN SỐ NGUYÊN TIỀN TỆ THỰC THỰC
TIỀN TỆ TIỀN TỆ TIỀN TỆ THỰC THỰC
THỰC THỰC THỰC THỰC THỰC
Ngày/giờ THỰC THỰC THỰC Ngày/giờ

Đầu Trang Đầu Trang

Xử lý các giá trị trống, chuỗi trống và các giá trị bằng không

Trong DAX, giá trị null, giá trị trống, ô rỗng hoặc giá trị bị thiếu, tất cả đều được biểu diễn bởi cùng kiểu giá trị mới, BLANK. Bạn cũng có thể tạo giá trị trống bằng cách dùng hàm BLANK hoặc kiểm tra giá trị trống bằng cách dùng hàm ISBLANK.

Cách xử lý giá trị trống trong các phép tính, như phép cộng hoặc ghép nối, tùy thuộc vào hàm cụ thể. Bảng sau tóm tắt sự khác biệt giữa các công thức của DAX và Microsoft Excel về cách xử lý giá trị trống.

Biểu thức DAX Excel
BLANK + BLANK BLANK 0 (không)
BLANK +5 5 5
BLANK * 5 BLANK 0 (không)
5/BLANK Vô cực Lỗi
0/BLANK NaN Lỗi
BLANK/BLANK BLANK Lỗi
FALSE OR BLANK FALSE FALSE
FALSE AND BLANK FALSE FALSE
TRUE OR BLANK TRUE TRUE
TRUE AND BLANK FALSE TRUE
BLANK OR BLANK BLANK Lỗi
BLANK AND BLANK BLANK Lỗi

Để biết chi tiết về cách xử lý giá trị trống của một hàm hoặc toán tử cụ thể, xem chủ đề cụ thể cho từng hàm DAX, trong phần Tham khảo Hàm DAX.

Đầu Trang Đầu Trang

 
 
Áp dụng cho:
Excel 2013, Power BI for Office 365 Preview, Power Pivot in Excel 2013