Support formation Rapports Power BI
Pages
Langage M

icon picker
4 | Valeurs et expressions

Catégories

Valeurs primitives : éléments de données individuels que M traite comme une unité unique à des fins de traitement et d'opérations.
Valeurs structurées : peuvent contenir plusieurs valeurs. 3 types de valeurs structurées :
les listes,
les enregistrements,
les tables.
Valeurs de fonction : Le langage M comprend plus de 700 fonctions définies.
Valeurs de type : méta-valeurs qui fournissent des informations sur le type de données d'une autre valeur.

Types de données

Les 15 types primaires
Catégorie
Type de valeur
Littéral
Valeurs primitives
Null
null
Valeurs primitives
Logical
true, false
Valeurs primitives
Number
o, 5, -5, 1.5
Valeurs primitives
Time
#time(20,15,30)
Valeurs primitives
Date
#date(2024,03,01)
Valeurs primitives
DateTime
#datetime(2023,05,10,20,15,30)
Valeurs primitives
DateTimeZone
#datetimezone(2023,05,10,20,15,30, 09,00)
Valeurs primitives
Duration
#duration( 5, 2, 15, 0)
Valeurs primitives
Text
"hello world"
Valeurs primitives
Binary
#binary(”AQUID”)
Valeurs structurées
List
{1,2,3}
Valeurs structurées
Record
[A = 1, B = 2]
Valeurs structurées
Table
#table({”X”,”Y”}, {{0,1},{1,0}})
Valeurs de fonction
Function
(x) => x+1
Valeurs de type
Type
type text, type table [A = any, B = text ]
There are no rows in this table
Les types Claims
Type de valeur
Litéral
Description
Any. Type
type any
Représente toutes les valeurs
Binary.Type
type binary
Représente toutes les valeurs binaires
Date. Type
type date
Représente toutes les valeurs de date
DateTime.Type
type datetime
Représente toutes les valeurs de date et d'heure
DateTimeZone.Type
type datetimezone
Représente toutes les valeurs de date et d'heure relatives à un fuseau horaire
Duration.Type
type duration
Représente toutes les valeurs de durée
Function. Type
type function
Représente toutes les fonctions
List.Type
type list
Représente toutes les listes
Logical. Type
type logical
Représente toutes les valeurs logiques
None.Type
type none
Ne représente aucune valeur
Null.Type
type null
Représente null
Byte. Type
type number
Représente tous les octets
Currency. Type
type number
Représente la valeur de la devise
Decimal.Type
type number
Représente un nombre décimal à virgule fixe
Double.Type
type number
Représente un nombre à virgule flottante en double précision
Int16.Type
type number
Représente un entier signé de 16 bits
Int32.Type
type number
Représente un entier signé de 32 bits
Int64.Type
type number
Représente un entier signé de 64 bits
Int8.Type
type number
Représente un entier signé de 8 bits
Number. Type
type number
Représente tous les nombres
Percentage. Type
type number
Représente la valeur en pourcentage
Single.Type
type number
Représente un nombre à virgule flottante simple précision
Record.Type
type record
Représente tous les enregistrements
Table. Type
type table
Représente toutes les tables
Character. Type
type text
Représente tous les caractères
Guid.Type
type text
Représente une valeur GUID
Password.Type
type text
Représente un mot de passe texte
Text. Type
type text
Représente toutes les valeurs de texte
Uri. Type
type text
Représente une URI de texte
Time.Type
type time
Représente toutes les valeurs temporelles
Type.Type
type type
Représente tous les types
There are no rows in this table

Fonctions spéciales

Table
Nom
Rôle
Exemple
Aide
Value.Type
Retourne un type de données indiqué sour forme de texte
Value.Type( sType )
List.Count
Compte le nombre d’éléments d’une liste
List.Count( {1, 2, 3} )
There are no rows in this table

Listes

{
"a",
{4,5,6},
[Column1 = 1, Column2 = "v"],
#table( { "ID", "Product" }, {{ 1, "Apple" }} )
}
Retourne une liste d’une chaine, d’une liste, d’un enregistrement et d’une table.
List.Sort( List.Combine( { {1, 4}, {2, 5} } ) )
Retourne {1, 2, 4, 5}.
let
LowercaseLetters = { "a".."z" },
Numbers = { "0".."9" },
CombinedCharacters = LowercaseLetters & Numbers,
SelectCharacters = Text.Select( "inv-1006-!**!-(act)", CombinedCharacters )
in
SelectCharacters
Retourne inv1006act.
List.Numbers( 1, 5, 1 )
Retourne {1,2,3,4,5}

Tables

let
Source = Table.FromColumns(
{
{123, 34, 12, "txt", null},
{123, "txt", 34, 12, null},
{"txt", 123, 34, 12, null},
{123, "txt", "34", 12, null}
}
),
ChType = Table.TransformColumnTypes( Source,
{
{"Column1", Int64.Type},
{"Column2", Int64.Type},
{"Column3", Int64.Type},
{"Column4", Int64.Type}
}
)
in
ChType

Opérateurs

image.png

Query folding

let
Source = Sql.Database("localhost", "AdventureWorksDW2022"),
dbo_DimCurrency = Source{[Schema="dbo",Item="DimCurrency"]}[Data],
#"Sorted Rows" = Table.Sort(dbo_DimCurrency,{{"CurrencyAlternateKey", Order.Ascending}})
in
#"Sorted Rows"
devient en SQL
Select [_].[CurrencyKey],
[_].[CurrencyAlternateKey],
[_].[CurrencyName]
from [dbo].[DimCurrency] as [_]
order by [_].[CurrencyAlternateKey]

Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.