Enumerations Overview

Updated on

Enumerations in the Power Query M language are used to define a fixed set of possible values for a function argument. They help improve the accuracy and readability of the code by limiting the available options to a specific list of choices.

Enumerations in Power Query M

Below you will find a comprehensive table of all the enumerations available in the M language, along with a brief description of each one.

Data Manipulation

BinaryOccurrence.TypeSpecifies how many times the item is expected to appear in the group.
Occurrence.TypeSpecifies the occurrence of an element in a sequence.
Order.TypeSpecifies the direction of sorting.
PercentileMode.TypeSpecifies the percentile mode type.
Precision.TypeSpecifies the precision of comparison.
RankKind.TypeSpecifies the type of ranking.
RoundingMode.TypeSpecifies rounding direction when there is a tie between the possible numbers to round to.

Data Source and Integration

AccessControlKind.TypeSpecifies the kind of access control. It was added for a scenario which isn’t relevant any more. Therefore the function doesn’t currently have any practical use.
HiveProtocol.TypeSpecifies the Thrift Transport Protocol to use when connecting to a Hive server.
ODataOmitValues.TypeSpecifies the kinds of values an OData service can omit.
SapBusinessWarehouseExecutionMode.TypeValid options for SAP Business Warehouse execution mode option.
SapHanaDistribution.TypeValid options for SAP HANA distribution option.
SapHanaRangeOperator.TypeA range operator for SAP HANA range input parameters.
SparkProtocol.TypeSpecifies the protocol to use when connecting to an instance of Spark.

Encoding and Compression

BinaryEncoding.TypeSpecifies the type of binary encoding.
Compression.TypeSpecifies the type of compression.

Error Handling

ExtraValues.TypeSpecifies the expected action for extra values in a row that contains columns more than expected.
MissingField.TypeSpecifies the expected action for missing values in a row that contains columns less than expected.

File and Text Processing

BufferMode.TypeDescribes the type of buffering to be performed.
ByteOrder.TypeSpecifies the byte order.
CsvStyle.TypeSpecifies the significance of quotes in Csv documents.
LimitClauseKind.TypeDescribes the type of limit clause supported by the SQL dialect used by this data source.
QuoteStyle.TypeSpecifies the quote style.
RelativePosition.TypeIndicates whether indexing should be done from the start or end of the input.
TextEncoding.TypeSpecifies the text encoding type.

Join and Grouping

GroupKind.TypeSpecifies the kind of grouping.
JoinAlgorithm.TypeSpecifies the join algorithm to be used in the join operation.
JoinKind.TypeSpecifies the kind of join operation.
JoinSide.TypeSpecifies the left or right table of a join.


Day.TypeSpecifies a day of week.
TraceLevel.TypeSpecifies the trace level.
WebMethod.TypeSpecifies an HTTP method.

Contribute » | Contributors: Rick de Groot
Microsoft documentation: https://learn.microsoft.com/en-us/powerquery-m/enumerations