Bonjour tous le monde,
Je sollicite votre aide sur un problème majeur dans l'une de mes procédures sql server.
Je suis sur Sql server 2000.
Mon problème se situe sur le fait que sur une jointure entre deux tables, je lis un champ varchar() et un champ int. En sachant que le champ varchar est censé contenir que des valeurs numériques (oui c'est tout pourrit mais j'ai pas la possibilité de changer le type de ce champs pour diverse raison). Le soucis, c'est que de véritables varchar sont contenus parfois dans ce champs, et forcément ça fait planter ma procédure puisque c'est une jointure sur un int.
Donc, pour éviter les soucis, je voulais savoir s'il était possible de mettre une condition sur ce champ, du style, si varchar alors je teste pas, si int ça roule.
Voici la fameuse partie qui merdouille :
La partie en gras, étant la fameuse condition qui se retrouve à associer un int et un varchar (étonnement ça plante pas si le varchar est en réalité un chiffre...).
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 select #PBT_06.*, #PBT_02.HISTO_1, #PBT_02.HISTO_2, UTA_PR, UTA_N into #PBT_07 from #PBT_06 left join #PBT_02 on #PBT_06.HISTO_3 = #PBT_02.HISTO_3 and #PBT_06.HISTO_DT_4 = #PBT_02.HISTO_DT_4 and #PBT_02.HISTO_2 in ('tt','ee') left join GMC_NOM on GMC_NOM.ID_T = #PBT_02.HISTO_ID
Merci de l'aide que vous pourrez m'apporter
Partager