Updated on

Logical.Type is a type facet in the Power Query M language. It represents the default type claim for the ‘type logical’. It is used primarily for logical operations and conditions within Power Query M, such as filtering and decision-making processes. The base type of ‘type logical’ in Power Query is for boolean values.


Generally, you will face a facet when transforming column types. You can transform a column into the specified type by using Table.TransformColumnTypes:

Table.TransformColumnTypes( Source, {{ "myColumn", Logical.Type }} )

Or when adding a column using Table.AddColumn:

Table.AddColumn( Source, "myColumn", TRUE, Logical.Type" )

To inspect the kind of value you are dealing with, you can make use of the Table.Schema function. Applying it to a table returns a table with information about your columns. The Table.SingleRow function then transforms the result into a record, for easier reading.

  a =  TRUE,
   // Ascribes the default type claim facet for 'type logical'
  b = Value.ReplaceType( a, Logical.Type ),
  // Returns a table containing a value with the ascribed "Logical.Type" 
  c = #table(type table [Col1 = Value.Type( b ) ], { b } ), 
  // Shows the Table information, including typeName and value kind
  d = Table.Schema( c ),
  // For easier viewing, return table as record
  e = Table.SingleRow( d )

Related facets

Other related facets are:

BI Gorilla Youtube Channel

Contribute » | Contributors: Rick de Groot