|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Inscription : février 2005 Messages : 87 ![]() |
Bonjour
dans sql oracle j'ai la fonction REPLACE qui remplace une chiane dans une autre et renvoie le resulta, mais je ne trouve d'equivalent en sql SYBASE si qlq un à un idée merci d'avance |
|
|
00
|
|
|
#2 |
|
Membre du Club
![]() Inscription : septembre 2007 Messages : 39 ![]() |
Bonjour,
La fonction str_replace devrait te convenir. Voici un copier/coller de la doc ASE 12.5.1 'Manuel de reference' sur le sujet (ch2) : Description Remplace toute instance de la deuxième expression de chaîne (expression_chaîne2) présente au sein de la première expression de chaîne (expression_chaîne1) par une troisième expression (expression_chaîne3). Syntaxe replace("expression_chaîne1", "expression_chaîne2", "expression_chaîne3") Paramètres expression_chaîne1 chaîne source, ou expression de chaîne faisant l’objet de la recherche, exprimée sous la forme d’un type de données char, varchar, unichar, univarchar, varbinary ou binary. expression_chaîne2 chaîne masque ou expression de chaîne à rechercher au sein de la première expression (expression_chaîne1). expression_chaîne2 est exprimée sous la forme d’un type de données char, varchar, unichar, univarchar, varbinary ou binary. expression_chaîne3 expression de chaîne de remplacement, exprimée sous la forme d’un type de données char, varchar, unichar, univarchar, binary ou varbinary. Exemples Exemple 1 Remplace la chaîne def dans la chaîne cdefghi par la chaîne yyy. replace("cdefghi","def","yyy") ------------- cyyyghi (1 row(s) affected) Exemple 2 Remplace tous les espaces par « toyota ». select str_replace("chevy, ford, mercedes", "","toyota") ---------- chevy,toyotaford,toyotamercedes (1 row(s) affected) Remarque Adaptive Server convertit une constante de chaîne vide par une chaîne d’1 espace automatiquement afin de distinguer la chaîne des valeurs NULL. Utilisation •Renvoie des données varchar si expression_chaîne (1,2 ou 3) est de type char ou varchar. •Renvoie des données univar si expression_chaîne (1,2 ou 3) est de type unichar ou univarchar. CHAPITRE 2 Fonctions Transact-SQL Manuel de référence : éléments syntaxiques 223 •Renvoie des données varbinary si expression_chaîne (1,2 ou 3) est de type binary ou varbinary. •Tous les arguments doivent partager le même type de données. •Si l’un des arguments est NULL, la fonction renvoie la valeur NULL. •La longueur du résultat peut varier en fonction des valeurs connues pour les arguments lors de la compilation de l’expression. Si tous les arguments sont des variables aux valeurs constantes connues, Adaptive Server calcule la longueur du résultat comme suit : result_length = ((s/p)*(r-p)+s) where s = length of source string p = length of pattern string r = length of replacement string if (r-p) <= 0, result length = s •Si la chaîne source (expression_chaîne1) est une colonne et que expression_chaîne2 et expression_chaîne3 sont des valeurs constantes connues au moment de la compilation, Adaptive Server calcule la longueur de résultat à l’aide de la formule ci-dessus. •Si Adaptive Server est incapable de calculer la longueur du résultat parce que les valeurs des arguments ne sont pas connues au moment de la compilation de l’expression, la longueur de résultat utilisée est 255, à moins que l’indicateur de trace 244 soit activé. Dans ce cas, la longueur de résultat est 16 384. • result_length ne dépasse jamais 16 384. Normes Niveau de conformité avec la norme SQL ANSI : extension Transact-SQL. Autorisations Tous les utilisateurs peuvent exécuter str_replace. Voir aussi Types de données char, varchar, binary, varbinary, unichar, univarchar Fonction length Si tu as des questions concernant ton cas précis, n'hésites pas a poster a nouveau. A+ |
|
|
00
|
|
|
#3 |
![]() ![]() |
__________________
Sr DBA Oracle / Sybase / MS-SQL / DB2 / Informix / Postgresql Administrateur SAP Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums ! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com