Bonjour,
voila mon problème, je voudrais faire une requête de telle que:
Update ma_table SET .... WHERE une_chaine contient une_colonne_dematable.
j'aip as su traduire " une_chaine contient une_colonne_dematable." en sqal si vous avez une idée.
merci
Merci.
Publicité
Posté le 29-09-2005 à 10:37:25
betsamee
Asterisk Zeperyl
Posté le 29-09-2005 à 10:38:20
rien capte
Beegee
Posté le 29-09-2005 à 10:46:41
Sous Oracle, y a ça qui marche :
UPDATE ma_table
SET ...
WHERE ma_chaine LIKE '%' || ma_colonne || '%';
Suivant les SGBD, il doit y avoir des fonctions prévues pour, du genre CONTAINS(chaine, souschaine).
root76
Posté le 29-09-2005 à 10:47:09
concrétement j'ai un tableau php avec modele_tele-->prix, et je voudrais mettre à jour les prix d'une table sql or je peux avoir par exemple:
dans le tableau: panasonicxz110silver -->699 , et dans la table j'ai la valeur panasonicxz100
or si je mets
update tele SET prix=699 where nom=panasonicxz110silver; il va pa la mettre à jour car le nom est panasonicxz110 dans la table.
voila j espere que j'étais clair et encore merci
root76
Posté le 29-09-2005 à 10:48:07
je suis sous Mysql
Beegee
Posté le 29-09-2005 à 10:49:19
J'ai regardé, avec mySql tu peux utiliser INSTR(str,substr) (ça renvoie l'indice de la 1ère occurrence trouvée).
UPDATE matable
SET ...
WHERE INSTR(machaine, macolonne) > 0;
betsamee
Asterisk Zeperyl
Posté le 29-09-2005 à 10:51:26
avec mysql like %% fonctionne aussi
Beegee
Posté le 29-09-2005 à 10:53:42
Je l'utilise tellement peu ... par contre au boulot j'ai toujours des bases Oracle sous la main