Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[SSIS] Syntaxe colonnes dérivées / Variable(s) date ?

2 réponses
Avatar
OokieDookie
Bonjour à tous,

Dans le cadre d'un ETL, je souhaite récupérer plusieurs informations :
- Je ne trouve pas dans la doc en ligne d'exemple concret en ce qui concerne
les équivalences de syntaxe pour l'obtention de colonnes dérivées.

Par exemple que l'équivalent du transact SQL :
CASE RTRIM(MonChamp) IS NULL THEN 'ZZZ' ELSE RTRIM(MonChamp) END
peut se traduire comme suit :
RTRIM(COD_CPT) == "" ? "ZZZ" : TRIM(COD_CPT)

- D'autre part, je développe un ETL basé entre autres sur une base Oracle
(qui stocke les dates sous format numérique AAAAMMDD) et une base SQL
(datetime).

Je dois borner la reprise des données sur une date. Cette date étant
contenue dans une table de paramètres de la base Oracle, je suppose que je
peux la récupérer dans une variable pour mes requêtes d'alimentation (SQL
command)

J'aimerai donc connaître vos références en la matière, si vous en avez :
sites web, docs, stages... Je viens de suivre le cours MS 2795A, pour ceux
qui connaissent, mais le contenu se "limitait" à l'architecture, or j'ai
besoin de concret, et bien sûr pour hier ;)

Merci d'avance pour vos infos.

Bonne fin de journée à tous.

2 réponses

Avatar
Jean-Nicolas BERGER
Bonjour,
Pour ce qui concerne la première question, je vous invite à vous tourner
vers l'aide en ligne de la fonction ISNULL.
Exemple : Isnull(Rtrim(MonChamp),'ZZZ')
Au besoin, il y a aussi la fonction COALESCE

Pour ce qui concerne les dates, je ne suis pas expert Oracle, mais il faut
arrêter de voir le stockage des dates comme stockage d'une chaine de
caractères. La chaîne de caractères n'est qu'une transcription, mais pas du
tout un format de stockage de dates. Mais beaucoup d'articles en parle
déjà...

Cordialement.
JN BERGER


"OokieDookie" a écrit dans le message de news:

Bonjour à tous,

Dans le cadre d'un ETL, je souhaite récupérer plusieurs informations :
- Je ne trouve pas dans la doc en ligne d'exemple concret en ce qui
concerne
les équivalences de syntaxe pour l'obtention de colonnes dérivées.

Par exemple que l'équivalent du transact SQL :
CASE RTRIM(MonChamp) IS NULL THEN 'ZZZ' ELSE RTRIM(MonChamp) END
peut se traduire comme suit :
RTRIM(COD_CPT) == "" ? "ZZZ" : TRIM(COD_CPT)

- D'autre part, je développe un ETL basé entre autres sur une base Oracle
(qui stocke les dates sous format numérique AAAAMMDD) et une base SQL
(datetime).

Je dois borner la reprise des données sur une date. Cette date étant
contenue dans une table de paramètres de la base Oracle, je suppose que je
peux la récupérer dans une variable pour mes requêtes d'alimentation (SQL
command)

J'aimerai donc connaître vos références en la matière, si vous en avez :
sites web, docs, stages... Je viens de suivre le cours MS 2795A, pour ceux
qui connaissent, mais le contenu se "limitait" à l'architecture, or j'ai
besoin de concret, et bien sûr pour hier ;)

Merci d'avance pour vos infos.

Bonne fin de journée à tous.


Avatar
OokieDookie
Bonjour,

Autant pour moi, l'exemple donné n'était pas des plus heureux mais ma
question reste où trouver des exemples d'équivalence entre ces deux syntaxes.
Mon problème se situe plus au niveau de la traduction du CASE qu'à celui du
test.

En ce qui concerne la date, bien que 100% d'accord avec le fait que DATETIME
n'a pas été créé pour faire joli dans une BDD (ce qui apparemment n'est pas
le cas de tout le monde... ;), il s'agit d'une base que je ne peux modifier.

Merci néanmoins de cette réponse, et bonne journée.

"Jean-Nicolas BERGER" a écrit :

Bonjour,
Pour ce qui concerne la première question, je vous invite à vous tourner
vers l'aide en ligne de la fonction ISNULL.
Exemple : Isnull(Rtrim(MonChamp),'ZZZ')
Au besoin, il y a aussi la fonction COALESCE

Pour ce qui concerne les dates, je ne suis pas expert Oracle, mais il faut
arrêter de voir le stockage des dates comme stockage d'une chaine de
caractères. La chaîne de caractères n'est qu'une transcription, mais pas du
tout un format de stockage de dates. Mais beaucoup d'articles en parle
déjà...

Cordialement.
JN BERGER


"OokieDookie" a écrit dans le message de news:

> Bonjour à tous,
>
> Dans le cadre d'un ETL, je souhaite récupérer plusieurs informations :
> - Je ne trouve pas dans la doc en ligne d'exemple concret en ce qui
> concerne
> les équivalences de syntaxe pour l'obtention de colonnes dérivées.
>
> Par exemple que l'équivalent du transact SQL :
> CASE RTRIM(MonChamp) IS NULL THEN 'ZZZ' ELSE RTRIM(MonChamp) END
> peut se traduire comme suit :
> RTRIM(COD_CPT) == "" ? "ZZZ" : TRIM(COD_CPT)
>
> - D'autre part, je développe un ETL basé entre autres sur une base Oracle
> (qui stocke les dates sous format numérique AAAAMMDD) et une base SQL
> (datetime).
>
> Je dois borner la reprise des données sur une date. Cette date étant
> contenue dans une table de paramètres de la base Oracle, je suppose que je
> peux la récupérer dans une variable pour mes requêtes d'alimentation (SQL
> command)
>
> J'aimerai donc connaître vos références en la matière, si vous en avez :
> sites web, docs, stages... Je viens de suivre le cours MS 2795A, pour ceux
> qui connaissent, mais le contenu se "limitait" à l'architecture, or j'ai
> besoin de concret, et bien sûr pour hier ;)
>
> Merci d'avance pour vos infos.
>
> Bonne fin de journée à tous.