Bonjour,
J'ai un petit soucis, j'ai une évolution à réaliser sur un script de création de table et je cherche à paramétrer ma fonction decode.
Voici le code concerné :
Ce que j'ai fais moi, j'ai dupliqué la fonction décode pour qu'elle réponde à mes nouveau critères. Sauf que là la création de la table est impossible vue que la colonne ENTITY_ID est crée 2 fois. Est il possible de mettre plusieurs condition dans 1 balise decode?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 CREATE TABLE STAT.RAA_RAWDATA_AGENT as select SEQ_RAA_RAWDATA_AGENT.nextval PK_RAA_ID, to_number(TO_CHAR(STA_D_DATE, 'YYYYMMDDhh24')) FK_DAT_ID, STA_A_ACTION ACTION, STA_C_AGENT_ID SAGES_AGENT, STA_C_TYPE_AGENT TYPE_AGENT, STA_D_DATE DATE_PUBLICATION, decode(STA_C_TYPE_AGENT, 'DGI', decode (SUBSTR(STA_C_AGENT_ID,1, 7), 'A457V05', STA_C_AGENT_ID, substr(STA_C_AGENT_ID,1, 7)),STA_C_AGENT_ID) ENTITY_ID, decode(STA_C_TYPE_AGENT, 'DGI', decode (SUBSTR(STA_C_AGENT_ID,1, 4), 'B210A', STA_C_AGENT_ID, substr(STA_C_AGENT_ID,1, 10)),STA_C_AGENT_ID) ENTITY_ID, STA_A_VAR1 VAR_1, STA_A_VAR2 VAR_2, STA_A_VAR3 VAR_3, STA_A_VAR4 VAR_4, STA_A_VAR5 VAR_5 from STA_AGENT where STA_C_AGENT_ID not in (SELECT EHA_AGENT_ID FROM STAT.EHA_ENTITE_HYPERVISION_AGENT )
Ce que je voudrai en faite est que si les 4 premiers caractères de STA_C_AGENT_ID est égale a B210A alors je copie tous le champs sinon je ne prend que les 7 premiers caractère.
Merci pour votre aide, je peux donner plus de précisions si ce n'est pas claire.
Thomas.
Partager