Commande SPLITVALUES
Information de concept
Divise une table en deux tables ou plus selon les valeurs uniques d'un champ clé. Les tables de sortie utilisent la valeur unique comme nom de table, avec un préfixe optionnel au format texte.
Remarque
Le nombre maximal de valeurs de champs clés uniques pris en charge lors de la division d'une table est de 450.
Syntaxe
SPLITVALUES ON champ_clé <PREFIX texte_préfixe> {FIELDS nom_champ <AS nouveau_nom_champ> <...n>|FIELDS ALL} <nom_table_associée.ALL <...n>> <IF test> <TO nom_dossier> <WHILE test> <FIRST plage|NEXT plage>
Paramètres
| Nom | Description |
|---|---|
|
ON champ_clé |
Champ clé à utiliser pour diviser la table. Le champ clé peut être de type caractère, numérique, DateHeure ou logique. Pour utiliser plusieurs champs clés, créez un champ calculé qui concatène les champs clés, puis utilisez le champ calculé comme champ clé. Remarque Le champ clé est inclus automatiquement dans la table de sortie et ne doit pas être spécifié à l'aide de FIELDS. |
|
PREFIX texte_préfixe optionnel |
Chaîne alphanumérique utilisée comme préfixe pour tous les noms de table de sortie. Si vous ignorez PREFIX, les tables de sortie utilisent uniquement la valeur de champ clé unique comme nom de table. Le préfixe du nom de table est limité à 32 caractères alphanumériques. Les noms de table complets sont limités à 64 caractères alphanumériques. Si la combinaison d'un préfixe de nom de table et d'une valeur de champ clé dépasse 64 caractères, le nom de table est tronqué en partant de la droite. Le préfixe du nom de table peut inclure le trait de soulignement (_), mais aucun autre caractère spécial ni espace. Le préfixe ne peut pas commencer par un chiffre. Astuce Si vous utilisez un champ clé de type DateHeure ou numérique, utilisez un préfixe tel que D_ ou N_ afin de conserver le premier chiffre des valeurs clés dans les noms de table de sortie. |
|
FIELDS nom_champ | FIELDS ALL |
Les champs à inclure dans la sortie :
|
|
AS nouveau_nom_champ optionnel |
Valide uniquement en cas d'utilisation de FIELDS nom_champ. Nouveau nom physique et nom d'affichage (autre titre de la colonne) pour le champ dans la table de sortie. Les caractères spéciaux ou les espaces que vous indiquez sont conservés dans le nom d'affichage et automatiquement convertis en traits de soulignement (_) dans le nom de champ physique dans le format de table. Indiquez nouveau_nom_champ sous forme de chaîne entre guillemets. Utilisez un point-virgule (;) entre les mots si vous souhaitez insérer un saut de ligne dans le nom d'affichage. |
| nom_table_associée.ALL optionnel |
Utilisez tous les champs dans la table associée spécifiée. |
|
IF test optionnel |
Expression conditionnelle qui doit être vraie afin de traiter chaque enregistrement. La commande est exécutée uniquement sur les enregistrements remplissant la condition. Remarque La condition IF est évaluée uniquement par rapport aux enregistrements restant dans une table après application des options relevant du champ d'application (WHILE, FIRST, NEXT). |
|
TO nom_dossier optionnel |
Dossier de destination pour les tables de sortie. Si vous omettez TO, les tables sont enregistrées dans le dossier contenant le projet Analytics. |
|
WHILE test optionnel |
Expression conditionnelle qui doit être vraie afin de traiter chaque enregistrement. La commande est exécutée jusqu'à ce que la condition soit évaluée comme fausse ou lorsque la fin de la table est atteinte. Remarque Si vous utilisez WHILE conjointement avec FIRST ou NEXT, le traitement des enregistrements s'arrête dès qu'une limite est atteinte. |
|
FIRST plage | NEXT plage optionnel |
Le nombre d'enregistrements à traiter :
Utilisez plage pour indiquer le nombre d'enregistrements à traiter. Si vous ignorez FIRST et NEXT, tous les enregistrements sont traités par défaut. |
Exemples
Diviser une table en fonction d'un champ clé unique
Vous générez plusieurs tables de sortie en fonction de valeurs uniques dans le champ Nom_Fournisseur de la table Trans_Cf :
OPEN Trans_Cf
SPLITVALUES ON Nom_Fournisseur PREFIX Fournisseur_ FIELDS Num_Fournisseur Ville_Fournisseur Num_Facture Date_Facture Montant_Facture NumProd Quantité Coût_unitaire TO "Tables_fournisseur"
Chaque table de sortie contient tous les enregistrements qui ont la même valeur clé unique. Les tables sont nommées Fournisseur_nom_fournisseur. Par exemple, une table nommée Fournisseur_Koro_International contient tous les enregistrements dans lesquels Koro International est la valeur Nom_Fournisseur.
Les tables sont enregistrées dans le dossier Tables_fournisseur du répertoire de travail Analytics.Analytics
Diviser une table en fonction de plusieurs champs clés
Vous générez plusieurs tables de sortie en fonction de combinaisons uniques de valeurs dans les champs Nom_Fournisseur et Date_Facture de la table Trans_Cf.
La fonction ALLTRIM( ) supprime les espaces de début et de fin inutiles des valeurs de nom de fournisseur. Si vous ne supprimez pas les espaces, elles sont converties en caractères de soulignement (_), ce qui limite l'espace disponible dans les noms de table de sortie.
La fonction DATE( ) convertit le champ Date_Facture en type de données caractère, qui est nécessaire pour la concaténation.
OPEN Trans_Cf
SPLITVALUES ON ALLTRIM(Nom_Fournisseur)+"_"+DATE(Date_Facture; "MM/JJ/AA") FIELDS Num_Fournisseur Nom_Fournisseur Num_Facture Date_Facture Montant_Facture NumProd Quantité Coût_unitaire TO "Tables_Date_fournisseur"
Chaque table de sortie contient tous les enregistrements qui ont la même combinaison unique de valeurs clés. Les tables sont nommées nom_fournisseur_date_facture. Par exemple, une table nommée Koro_International_06_15_23 contient tous les enregistrements dans lesquels Koro International est la valeur Nom_Fournisseur et 06_15_23 est la valeur Date_Facture.
Les tables sont enregistrées dans le dossier Tables_Fournisseur_Date du répertoire de travail Analytics.Analytics