Création et Ajout de Données de Mesure d'Unité

Niveau de difficulté
Débutant
Publié le :
Le script initialise un nouveau jeu de données nommé `work.UnitMeasure` en utilisant une étape `DATA` et des `datalines4;` pour insérer des données directement dans le script. Les attributs des variables (longueur, format, label) sont explicitement définis pour `UnitMeasureCode` (chaîne), `Name` (chaîne) et `ModifiedDate` (numérique formatée en date/heure SAS©). Une fois le jeu de données temporaire créé, il est ajouté au jeu de données permanent `productn.UnitMeasure` en utilisant `PROC APPEND`. Ce processus est couramment utilisé pour gérer des tables de référence ou pour ajouter des enregistrements à une table existante.
Analyse des données

Type : CREATION_INTERNE


Les données sont créées directement dans le script SAS via une instruction `datalines4;` au sein d'une étape `DATA`. Il n'y a pas de dépendance à des fichiers externes ou à des bibliothèques SAS par défaut (comme SASHELP) pour la source des données.

1 Bloc de code
DATA STEP Data
Explication :
Ce bloc `DATA STEP` crée le jeu de données temporaire `work.UnitMeasure`. Il définit la structure des variables, notamment `UnitMeasureCode` et `Name` comme caractères, et `ModifiedDate` comme numérique avec un format de date/heure SAS `DATETIME22.3`. Les données sont lues directement à partir des `datalines4;` incluses dans le script. Le nombre `1525132800` pour `ModifiedDate` sera interprété par SAS comme un nombre de secondes écoulées depuis le 1er janvier 1960.
Copié !
1DATA work.UnitMeasure ;
2attrib
3UnitMeasureCode LENGTH= $6 FORMAT=$6. label="UnitMeasureCode"
4Name LENGTH= $100 FORMAT=$100. label="Name"
5ModifiedDate LENGTH= 8 FORMAT=DATETIME22.3 label="ModifiedDate"
6;
7INFILE CARDS dsd delimiter=',';
8INPUT
9 UnitMeasureCode :$char.
10 Name :$char.
11 ModifiedDate
12;
13datalines4;
14BOX,Boxes,1525132800
15BTL,Bottle,1525132800
16C,Celsius,1525132800
17CAN,Canister,1525132800
18CAR,Carton,1525132800
19CBM,Cubic meters,1525132800
20CCM,Cubic centimeter,1525132800
21CDM,Cubic decimeter,1525132800
22CM,Centimeter,1525132800
23CM2,Square centimeter,1525132800
24CR,Crate,1525132800
25CS,Case,1525132800
26CTN,Container,1525132800
27DM,Decimeter,1525132800
28DZ,Dozen,1525132800
29EA,Each,1525132800
30FT3,Cubic foot,1525132800
31G,Gram,1525132800
32GAL,Gallon,1525132800
33IN,Inch,1525132800
34KG,Kilogram,1525132800
35KGV,Kilogram/cubic meter,1525132800
36KM,Kilometer,1525132800
37KT,Kiloton,1525132800
38L,Liter,1525132800
39LB,US pound,1525132800
40M,Meter,1525132800
41M2,Square meter,1525132800
42M3,Cubic meter,1525132800
43MG,Milligram,1525132800
44ML,Milliliter,1525132800
45MM,Millimeter,1525132800
46OZ,Ounces,1525132800
47PAK,Pack,1525132800
48PAL,Pallet,1525132800
49PC,Piece,1525132800
50PCT,Percentage,1525132800
51PT,"Pint, US liquid",1525132800
52;;;;
53RUN;
2 Bloc de code
PROC APPEND
Explication :
Ce bloc `PROC APPEND` ajoute toutes les observations du jeu de données source `work.UnitMeasure` au jeu de données cible `productn.UnitMeasure`. Si la table `productn.UnitMeasure` n'existe pas, `PROC APPEND` la crée automatiquement avant d'y ajouter les données. C'est une méthode efficace pour ajouter des lignes à une table existante sans avoir à la recréer entièrement et sans trier les deux tables.
Copié !
1 
2PROC APPEND base=productn.UnitMeasure
3DATA=work.UnitMeasure;
4RUN;
5 
Ce matériel est fourni "tel quel" par We Are Cas. Il n'y a aucune garantie, expresse ou implicite, quant à la qualité marchande ou à l'adéquation à un usage particulier concernant le matériel ou le code contenu dans les présentes. We Are Cas n'est pas responsable des erreurs dans ce matériel tel qu'il existe maintenant ou existera, et We Are Cas ne fournit pas de support technique pour celui-ci.
Informations de Copyright : Available on github.com/sasjs/core. Copyright 2010-2023 HMS Analytical Software GmbH, http://www.analytical-software.de. This file is part of SASUnit.


Documentation liée

Aucune documentation spécifique pour cette catégorie.