Types de données dans les modèles de données

Important :  Cet article a été traduit automatiquement, voir l’avertissement. Vous pouvez consulter la version en anglais de cet article ici.

Dans un modèle de données, à chaque colonne correspond un type de données associé qui spécifie le type de données que la colonne peut contenir : nombres entiers, nombres décimaux, texte, devises, dates et heures et ainsi de suite. Le type de données détermine également les types d'opérations que vous pouvez effectuer sur la colonne et la quantité de mémoire nécessaire pour stocker les valeurs qu'elle contient.

Si vous utilisez le complément Power Pivot, vous pouvez modifier le type de données d'une colonne. Vous devez le faire si une colonne de date est importée comme chaîne, mais vous avez besoin qu'elle soit d'un autre type. Pour plus d'informations, consultez Définir le type de données d'une colonne dans Power Pivot.

Contenu de cet article

Résumé des types de données

Type de données table

Conversion implicite et explicite de types de données dans les formules DAX

Tableau de conversions de données implicites

Addition (+)

Soustraction (-)

Multiplication (*)

Division (/)

Opérateurs de comparaison

Gestion des valeurs vides, des chaînes vides et des valeurs zéro

Résumé des types de données

Le tableau suivant répertorie les types de données pris en charge dans un modèle de données. Lorsque vous importez des données ou utilisez une valeur dans une formule, même si la source de données d'origine contient un type de données différent, les données sont converties dans l'un de ces types de données. Les valeurs issues des formules utilisent également ces types de données.

Type de données dans Excel

Type de données dans DAX

description

Nombre entier

Valeur entière de 64 bits (huit octets) 1, 2

Nombres qui n'ont pas de décimales. Les entiers peuvent être des nombres positifs ou négatifs, mais doivent être compris entre -9 223 372 036 854 775 808 (-2^63) et 9 223 372 036 854 775 807 (2^63-1).

Nombre décimal

Nombre réel de 64 bits (huit octets) 1, 2

Les nombres réels sont des nombres qui peuvent avoir des décimales. Les nombres réels couvrent une large gamme de valeurs :

Valeurs négatives de -1.79E +308 à -2.23E -308

Zéro

Valeurs positives de 2.23E -308 à -1.79E +308

Toutefois, le nombre de bits significatifs est limité à 15 chiffres décimaux.

VRAI/FAUX

Booléen

Valeur Vrai ou valeur Faux.

Texte

Chaîne

Chaîne de données caractères au format Unicode. Il peut s'agir de chaînes, de nombres ou de dates représentés dans un format texte.

La longueur maximale de chaîne est de 268 435 456 caractères Unicode (256 méga caractères) ou 536 870 912 octets.

Date

Date/heure

Dates et heures dans une représentation date-heure acceptée.

Les dates valides sont toutes les dates après le 1er janvier 1900.

Devise

Devise

Le type de données devise autorise des valeurs entre -922 337 203 685 477,5808 et 922 337 203 685 477,5807 avec quatre chiffres décimaux à précision fixe.

N/A

Vide

Le type de données Vide (Blank) de DAX représente et remplace les valeurs Null SQL. Vous pouvez créer une valeur vide à l'aide de la fonction BLANK et tester les valeurs vides à l'aide de la fonction logique ISBLANK.

1 Les formules DAX ne prennent pas en charge les types de données plus petits que ceux répertoriés dans le tableau.

2 Si vous importez des données ayant de très grandes valeurs numériques, l'importation peut échouer en raison de l'erreur suivante :

Erreur de base de données en mémoire : la colonne '<nom de colonne>' de la table '<nom de table>' contient une valeur, 1.7976931348623157e+308, qui n'est pas prise en charge. L'opération a été annulée.

Cette erreur se produit parce que Power Pivot utilise cette valeur pour représenter des valeurs Null. Les valeurs de la liste suivante sont des synonymes de la valeur Null :

Valeur

9223372036854775807

-9223372036854775808

1.7976931348623158e+308

2.2250738585072014e-308

Supprimez la valeur de vos données et réessayer d'importer.

Type de données table

DAX utilise un type de données table dans de nombreuses fonctions, comme les agrégations et les calculs Time Intelligence. Certaines fonctions requièrent une référence à une table ; d'autres retournent une table qui peut ensuite être utilisée en entrée pour d'autres fonctions. Dans certaines fonctions qui requièrent une table en entrée, vous pouvez spécifier une expression qui donne une table ; pour d'autres, une référence à une table de base est obligatoire. Pour plus d'informations sur les conditions requises pour des fonctions spécifiques, consultez Référence des fonctions DAX.

Conversion implicite et explicite de types de données dans les formules DAX

Chaque fonction DAX a des exigences spécifiques en ce qui concerne les types des données utilisés comme entrées et sorties. Par exemple, certaines fonctions requièrent des entiers pour certains arguments et des dates pour les autres ; d'autres fonctions requièrent du texte ou des tables.

Si les données de la colonne que vous spécifiez comme argument sont incompatibles avec le type de données requis par la fonction, DAX, dans de nombreux cas, retourne une erreur. Toutefois, DAX essaie chaque fois que possible de convertir implicitement les données dans le type de données requis. Par exemple :

  • Vous pouvez taper une date sous forme de chaîne, que DAX analysera et tentera de convertir dans l'un des formats de date et heure Windows.

  • Vous pouvez ajouter TRUE + 1 et obtenir le résultat 2, parce que TRUE est converti implicitement en nombre 1 et que l'opération 1+1 est effectuée.

  • Si vous additionnez les valeurs de deux colonnes, et qu'une valeur se trouve être représentée par du texte ("12") alors que l'autre est un nombre (12), DAX convertit implicitement la chaîne en nombre, puis fait l'addition pour produire un résultat numérique. L'expression suivante retourne 44 : = "22" + 22

  • Si vous essayez de concaténer deux nombres, Excel les présentera comme des chaînes, puis effectuera la concaténation. L'expression suivante retourne « 1234 » : = 12 & 34

Le tableau suivant résume les conversions de types de données implicites effectuées dans les formules. En règle générale, Excel effectue des conversions implicites chaque fois que cela est possible, comme requis par l'opération spécifiée.

Tableau de conversions de données implicites

Le type de conversion effectué est déterminé par l'opérateur, qui convertit les valeurs dont il a besoin avant d'effectuer l'opération demandée. Ces tableaux répertorient les opérateurs et indiquent la conversion effectuée sur chaque type de données dans la colonne lorsqu'il est couplé avec le type de données de la ligne d'intersection.

Remarque : Les types de données textuels ne sont pas inclus dans ces tableaux. Lorsqu'un nombre est représenté dans un format texte, Power Pivot tente dans certains cas de déterminer le type de nombre dont il s'agit et de le représenter comme un nombre.

Addition (+)

Opérateur (+)

INTEGER

CURRENCY

REAL

Date/heure

INTEGER

INTEGER

CURRENCY

REAL

Date/heure

CURRENCY

CURRENCY

CURRENCY

REAL

Date/heure

REAL

REAL

REAL

REAL

Date/heure

Date/heure

Date/heure

Date/heure

Date/heure

Date/heure

Par exemple, si un nombre réel est utilisé dans une opération d'addition en association avec des données de devise, les deux valeurs sont converties en REAL, et le résultat retourné est de type REAL.

Soustraction (-)

Dans le tableau suivant l'en-tête de ligne est le diminuende (côté gauche) et l'en-tête de colonne est le diminuteur (côté droit).

Opérateur (-)

INTEGER

CURRENCY

REAL

Date/heure

INTEGER

INTEGER

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

REAL

Date/heure

Date/heure

Date/heure

Date/heure

Date/heure

Par exemple, si une date est utilisée dans une opération de soustraction avec un autre type de données, les deux valeurs sont converties en dates et la valeur de retour est également une date.

Remarque : Les modèles de données prennent également en charge l'opérateur unaire, - (négatif), mais cet opérateur ne change pas le type de données de l'opérande.

Multiplication (*)

Opérateur (*)

INTEGER

CURRENCY

REAL

Date/heure

INTEGER

INTEGER

CURRENCY

REAL

INTEGER

CURRENCY

CURRENCY

REAL

CURRENCY

CURRENCY

REAL

REAL

CURRENCY

REAL

REAL

Par exemple, si un entier est combiné avec un nombre réel dans une opération de multiplication, les deux nombres sont convertis en nombres réels, et la valeur de retour est également de type REAL.

Division (/)

Dans le tableau suivant l'en-tête de ligne est le numérateur et l'en-tête de colonne est le dénominateur.

Opérateur (/)

(Ligne/Colonne)

INTEGER

CURRENCY

REAL

Date/heure

INTEGER

REAL

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

REAL

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

Date/heure

REAL

REAL

REAL

REAL

Par exemple, si un entier est combiné avec une valeur de devise dans une opération de division, les deux valeurs sont converties en nombres réels et le résultat est également un nombre réel.

Opérateurs de comparaison

Dans les expression de comparaison, les valeurs booléennes d'expressions sont considérées comme supérieures aux valeurs de chaîne et les valeurs de chaîne sont considérées supérieures aux valeurs numériques ou aux valeurs de date/heure ; les nombres et les valeurs de date/heure sont considérées avoir le même rang. Aucune conversion implicite n'est effectuée pour les valeurs booléennes ou les valeurs de chaîne ; BLANK ou une valeur vide est convertie en 0/""/False en fonction du type de données de l'autre valeur comparée.

Les expressions DAX suivantes illustrent ce comportement :

=IF(False() > « true », « Expression est vraie », « Expression est fausse »), renvoie « Expression est vraie »

= IF("12">12,"Expression is true", "Expression is false"), renvoie « Expression est vraie ».

= IF("12"=12,"Expression is true", "Expression is false"), renvoie « Des expressions est fausse »

Les conversions sont effectuées implicitement pour les types numérique ou date/heure comme décrit dans le tableau suivant :

Opérateur de comparaison

INTEGER

CURRENCY

REAL

Date/heure

INTEGER

INTEGER

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

REAL

Date/heure

REAL

REAL

REAL

Date/heure

Haut de la page

Gestion des valeurs vides, des chaînes vides et des valeurs zéro

Dans DAX, les valeurs NULL, les valeurs vides, les cellules vides ou les valeurs manquantes sont toutes représentées par le même nouveau type de valeur, BLANK. Vous pouvez également générer des valeurs vides à l'aide de la fonction BLANK ou les tester à l'aide de la fonction ISBLANK.

La façon dont les valeurs de ce type sont gérées dans des opérations telles que l'addition ou la concaténation dépend de la fonction en question. Le tableau suivant résume les différences entre les formules DAX et Microsoft Excel quant à la façon dont les valeurs vides (blank) sont gérées.

Expression

DAX

Excel

BLANK + BLANK

BLANK

0 (zéro)

BLANK +5

5

5

BLANK * 5

BLANK

0 (zéro)

5/BLANK

Infini

Erreur

0/BLANK

NaN

Erreur

BLANK/BLANK

BLANK

Erreur

FALSE OR BLANK

FAUX

FAUX

FALSE AND BLANK

FAUX

FAUX

TRUE OR BLANK

TRUE

TRUE

TRUE AND BLANK

FAUX

VRAI

BLANK OR BLANK

BLANK

Erreur

BLANK AND BLANK

BLANK

Erreur

Pour plus d'informations sur la façon dont une fonction ou un opérateur spécifique gère les valeurs vides, consultez la rubrique relative à la fonction DAX concernée dans la section Référence des fonctions DAX.

Haut de la page

Remarque : Avertissement traduction automatique : cet article a été traduit par un ordinateur, sans intervention humaine. Microsoft propose cette traduction automatique pour offrir aux personnes ne maîtrisant pas l’anglais l’accès au contenu relatif aux produits, services et technologies Microsoft. Comme cet article a été traduit automatiquement, il risque de contenir des erreurs de grammaire, de syntaxe ou de terminologie.

Développez vos compétences
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoignez le programme Office Insider

Ces informations vous ont-elles été utiles ?

Nous vous remercions pour vos commentaires.

Merci pour vos commentaires. Il serait vraisemblablement utile pour vous de contacter l’un de nos agents du support Office.

×