Bonjour à tous,
J'ai un fonctionnement d'oracle que je ne comprend pas avec les tables dérivées.
Le but est de sortir la date "date_livr" pour 20160334a = "22/01/16" car on veut la date initiale (Qui correspond à celle du 20160334) et pas celle de la mise à jour pour simplifier.
Jeu de données :
20160334a 19/04/16
20160334 22/01/16
J'aurai fais naturellement le SELECT ci-dessous
Sauf qu'il me sort un Null ??
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 SELECT a.*, CASE WHEN IS_TEXT_DSI(A.NUMERODEVISSELL) = 'Y' THEN (SELECT A.date_livr FROM TEST_Renouv B WHERE TO_CHAR(A.NUMERODEVISSELL) = TO_CHAR(SUBSTR(B.NUMERODEVISSELL,1,LENGTH(B.NUMERODEVISSELL)-1)) ) ELSE A.DATe_livr END DATE_T FROM TEST_Renouv A
SUBSTR(B.NUMERODEVISSELL,1,LENGTH(B.NUMERODEVISSELL)-1) = "20160334", donc je ne comprend pas.
Note : IS_TEXT_DSI renvoit Y ou N si c'est du texte ou non.
Merci d'avance pour vos explications!
Partager