Power Query M 公式語言包含一組運算子,其可在運算式中使用。
運算子會套用在運算元上,以形成符號運算式。 例如,在運算式 1 + 2 中,數字 1 與 2 為運算元,而運算子則為加法運算子 (+)。
取決於運算元值的類型,運算子的意義可能會不同。 語言具有下列運算子:
加號運算子 (+)
| 運算式 | 等於 |
|---|---|
1 + 2 |
數值加法: 3 |
#time(12,23,0) + #duration(0,0,2,0) |
時間算術: #time(12,25,0) |
組合運算子 (&)
| 函式 | 等於 |
|---|---|
"A" & "BC" |
文字串連: "ABC" |
{1} & {2, 3} |
列表串接:{1, 2, 3} |
[ a = 1 ] & [ b = 2 ] |
記錄合併: [ a = 1, b = 2 ] |
M 運算子清單
套用至、null、logical、number、time、date、datetime、datetimezone、duration、text的binary
| 運算子 | 描述 |
|---|---|
> |
大於 |
>= |
大於或等於 |
< |
小於 |
<= |
小於或等於 |
= |
等於 |
<> |
不等於 |
?? |
空值合併運算子 |
邏輯運算子 (除通用運算子之外)
| 運算子 | 描述 |
|---|---|
or |
條件式邏輯 OR |
and |
條件式邏輯 AND |
not |
邏輯 NOT |
數字運算子 (除通用運算子之外)
| 運算子 | 描述 |
|---|---|
+ |
總和 |
- |
差數 |
* |
Products |
/ |
商數 |
+x |
一元加號 |
-x |
否定 |
文字運算子 (除通用運算子之外)
| 運算子 | 描述 |
|---|---|
& |
串連 |
清單、記錄、資料表運算子
| 運算子 | 描述 |
|---|---|
= |
等於 |
<> |
不等於 |
& |
串連 |
記錄查閱運算子
| 運算子 | 描述 |
|---|---|
[] |
依據名稱來存取記錄欄位。 |
清單索引子運算子
| 運算子 | 描述 |
|---|---|
{} |
依據以零為基礎的數字索引來存取清單中的項目。 |
類型相容性和判斷提示運算子
| 運算子 | 描述 |
|---|---|
is |
表達式x is y在true的型別與x相容時會傳回y,如果false的型別與x不相容,則會傳回y。 |
as |
運算式 x as y 會根據 x 運算子來判斷值 y 與 is 是否相容。 |
日期運算子
| 運算子 | 左運算元 | 右運算元 | 意義 |
|---|---|---|---|
x + y |
time |
duration |
依據期間位移後的日期 |
x + y |
duration |
time |
依據期間位移後的日期 |
x - y |
time |
duration |
依據負期間位移後的日期 |
x - y |
time |
time |
日期之間的期間 |
x & y |
date |
time |
合併後的日期時間 |
日期時間運算子
| 運算子 | 左運算元 | 右運算元 | 意義 |
|---|---|---|---|
x + y |
datetime |
duration |
依據期間位移後的日期時間 |
x + y |
duration |
datetime |
依據期間位移後的日期時間 |
x - y |
datetime |
duration |
依據負期間位移後的日期時間 |
x - y |
datetime |
datetime |
日期時間之間的期間 |
運算子
| 運算子 | 左運算元 | 右運算元 | 意義 |
|---|---|---|---|
x + y |
datetimezone |
duration |
依據期間位移後的日期時區 |
x + y |
duration |
datetimezone |
依據期間位移後的日期時區 |
x - y |
datetimezone |
duration |
依據負間位移後的日期時區 |
x - y |
datetimezone |
datetimezone |
日期時區之間的期間 |
期間運算子
| 運算子 | 左運算元 | 右運算元 | 意義 |
|---|---|---|---|
x + y |
datetime |
duration |
依據期間位移後的日期時間 |
x + y |
duration |
datetime |
依據期間位移後的日期時間 |
x + y |
duration |
duration |
期間的總和 |
x - y |
datetime |
duration |
依據負期間位移後的日期時間 |
x - y |
datetime |
datetime |
日期時間之間的期間 |
x - y |
duration |
duration |
期間的差異 |
x * y |
duration |
number |
期間乘以 N 次 |
x * y |
number |
duration |
期間乘以 N 次 |
x / y |
duration |
number |
期間的分數 |
注意
並非所有的值組合都能受到運算子的支持。 評估時遇到未定義運算子條件的運算式會評估為錯誤。 如需 M 中錯誤的詳細資訊,請移至錯誤
錯誤範例:
| 函式 | 等於 |
|---|---|
1 + "2" |
錯誤:不支援將數字和文字相加 |