Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
750 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Numéric-->Chaine de caractère

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Numéric-->Chaine de caractère

n°394648
maxwell01
Posté le 15-05-2003 à 10:05:15  profilanswer
 

Est-ce que qq saurait faire une telle transformation?
J'en ai besoin pour faire la jointure entre 2 champs: l'un est un numeric et l'autre un character.
 :??:  :sarcastic:  :ouch:

mood
Publicité
Posté le 15-05-2003 à 10:05:15  profilanswer
 

n°394672
backdafuck​up
Back to da old skool
Posté le 15-05-2003 à 10:24:54  profilanswer
 

Je ne suis pas un expoert, mais je ne pense pas qu'il existe de cast dans un sgbd...
Après, selon le langage qui exploite ta base, tu peux caster d'entier à string... Faut que développes un peu ton problème [:spamafote]

n°394752
maxwell01
Posté le 15-05-2003 à 10:58:28  profilanswer
 

En fait je dois sélectionner des enregistrements présents dans une tables lorsque les éléments d'une autre tables concordent avec ceux de la première tables.
 
Le problème est que la clé primaire de la première table est un numéric et la clé primaire de la seconde table est une chaine de caractères.
Je ne peux donc pas faire de jointure sur les clés primaires.

n°394791
thecoin
Chasseur de chasseur de canard
Posté le 15-05-2003 à 11:19:26  profilanswer
 

C'est koi komme SGBD?


---------------
Si tu regardes ce que le canard mange, tu ne mangeras pas de canard.
n°394793
maxwell01
Posté le 15-05-2003 à 11:20:31  profilanswer
 

db2 pk?

n°394802
backdafuck​up
Back to da old skool
Posté le 15-05-2003 à 11:29:03  profilanswer
 

je connais pas db2, mais j'ai trouvé ca :
 
http://wwwlsi.supelec.fr/www/yb/po [...] 40.html#50

n°394807
polo021
Posté le 15-05-2003 à 11:32:59  profilanswer
 

sisi c'est possible mais je ne sais plus comment ca fonctionne. C'est une seule bete instruction il me semble (pour SQL en tout cas)
tu devrais trouver ca facilement sur le net

n°394811
backdafuck​up
Back to da old skool
Posté le 15-05-2003 à 11:33:59  profilanswer
 

c'est la fonction TO_CHAR...
 
polo, [:grilled]

n°394818
maxwell01
Posté le 15-05-2003 à 11:40:38  profilanswer
 

ça n'a pas l'air de marcher sous DB2!
Dommage!
Merci qd même
Est-ce que vous auriez d'autres solutions possibles?

n°395037
maxwell01
Posté le 15-05-2003 à 14:13:22  profilanswer
 

Personne ne saurait comment faire?

mood
Publicité
Posté le 15-05-2003 à 14:13:22  profilanswer
 

n°395040
backdafuck​up
Back to da old skool
Posté le 15-05-2003 à 14:13:48  profilanswer
 

TO_CHAR ca marche pas ?
 
C'est pas sous la norme SQL db2 ?

n°395060
maxwell01
Posté le 15-05-2003 à 14:20:39  profilanswer
 

ça ne marche pas à moins que la synataxe que j'utilise soit fausse.
Saurais-tu la syntaxe?

n°395100
backdafuck​up
Back to da old skool
Posté le 15-05-2003 à 14:32:36  profilanswer
 

il me semble que c'est TO_CHAR(nombre,format)
 
 
De toute facon, tout est expliqué la dessus :
http://wwwlsi.supelec.fr/www/yb/po [...] 40.html#50

n°395126
maxwell01
Posté le 15-05-2003 à 14:45:35  profilanswer
 

Voila la requête que j'exécute
SELECT to_char(T01.CLCLI,'9999';) FROM CLIALPTMP as T01
 
Voici le msg d'erreur
[SQL0204] TO_CHAR de type *N dans *LIBL non trouvé. Cause . . . . . : TO_CHAR de type *N dans *LIBL n'a pas été trouvé. S'il s'agit d'une instruction ALTER TABLE et si le type est *N, il n'a pas été trouvé de contrainte. S'il ne s'agit pas d'une instruction ALTER TABLE et que le type est *N, aucune fonction, procédure ou aucun déclencheur n'a été trouvé.Que faire . . . : Modifiez le nom, puis renouvelez votre demande. Si l'objet est un groupe de noeuds, vérifiez que le produit DB2 Multisystem est installé sur votre système et créez un groupe de noeuds à l'aide de la commande CL CRTNODGRP.
L'instruction mise en évidence a échoué, entraînant l'interruption du traitement

n°395136
backdafuck​up
Back to da old skool
Posté le 15-05-2003 à 14:51:01  profilanswer
 

:??:  
J'y connais rien à db2, mais la j'ai rien compris à l'erreur...
 
Faut que quelqu'un d'autre vienne, moi j'ai rien trouvé d'autre...
 
Ta syntaxe a l'air bonne...

n°395150
maxwell01
Posté le 15-05-2003 à 14:57:48  profilanswer
 

merci qd même

n°395165
anapajari
s/travail/glanding on hfr/gs;
Posté le 15-05-2003 à 15:03:03  profilanswer
 

essaye ça:
SELECT coalesce(char(T01.CLCLI),'9999';) FROM CLIALPTMP as T01  
 
normalement ça marche j'ai testé sur un DB2 ( AS400 ).
 
Par contre suivant les versions, certains fonctions existent ou pas ( comme ifnull par exemple et c'est pour ça que j'ai mis un coalesce).

n°395257
maxwell01
Posté le 15-05-2003 à 15:32:12  profilanswer
 

ça marche enfin
Merci beaucoup tu m'enlèves une sacrée épine du pied.
 
Ps je suis également sur un AS400
Merci encore :)  ;)  :wahoo:  :p


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Numéric-->Chaine de caractère

 

Sujets relatifs
Convertir une chaine char* en hexa en entier [Résolu]Comment recuperer la chaine de char de response.sendError
extraire un chiffre d'une chaineRécupérer les éléments d'une chaine
Imprimer une partie d une chaine de caracteres[ActionScript] Pb de chaine de caracteres
[ASP] fonction suppr espace fin de chainechaine d'entier "csv-style" -> int[]
[C]Taille de chaine de caractères dynamique...[Windows] qui transforme un Float en une chaine de char
Plus de sujets relatifs à : Numéric-->Chaine de caractère


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR