Partager via


Table.FromRecords

Syntaxe

Table.FromRecords(
    records as list,
    optional columns as any,
    optional missingField as nullable number
) as table

À propos

Convertit une liste d’enregistrements spécifiée en une table.

  • records: liste d’enregistrements à convertir en table.

  • columns: (Facultatif) Liste des noms de colonnes de la table ou du type de la table.

  • missingField: (Facultatif) Spécifie comment gérer les champs manquants dans une ligne. Utilisez l'une des valeurs suivantes :

    • MissingField.Error: tous les champs manquants produisent une erreur (valeur par défaut).
    • MissingField.UseNull: tous les champs manquants sont inclus en tant que null valeurs.

    L’utilisation MissingField.Ignore de ce paramètre génère une erreur.

Exemple 1

Créez une table à partir des enregistrements. Les noms des champs d’enregistrement sont utilisés pour nommer les colonnes.

Utilisation

Table.FromRecords({
    [CustomerID = 1, Name = "Bob", Phone = "123-4567"],
    [CustomerID = 2, Name = "Jim", Phone = "987-6543"],
    [CustomerID = 3, Name = "Paul", Phone = "543-7890"]
})

Sortie

#table(type table[CustomerID = any, Name = any, Phone = any],
{
    {1, "Bob", "123-4567"},
    {2, "Jim", "987-6543"},
    {3, "Paul", "543-7890"}
})

Exemple 2

Créez une table à partir des enregistrements avec des colonnes typées et sélectionnez les colonnes de nombres.

Utilisation

Table.ColumnsOfType(
    Table.FromRecords(
        {[CustomerID = 1, Name = "Bob"]},
        type table[CustomerID = Number.Type, Name = Text.Type]
    ),
    {type number}
)

Sortie

{"CustomerID"}

Exemple 3

Créez une table contenant le prénom, l’initial intermédiaire et le nom des clients à partir des enregistrements spécifiés. Si l’une des valeurs est manquante, remplacez la valeur par null.

Utilisation

Table.FromRecords({
        [CustomerID = 1, FirstName = "Bob", MiddleInitial = "C", LastName = "Smith"],
        [CustomerID = 2, FirstName = "Sarah", LastName = "Jones"],
        [CustomerID = 3, FirstName = "Harry", MiddleInitial = "H"]
    },
    type table [FirstName = nullable text, MiddleInitial = nullable text, LastName = nullable text],
    MissingField.UseNull)

Sortie

#table(type table[FirstName = text, MiddleInitial = text, LastName = text],
{
    {"Bob", "C", "Smith"},
    {"Sarah", null, "Jones"},
    {"Harry", "H", null}
})

Champ manquant