Cet article explore l'utilisation de la fonction replace () sur la base de données Oracle pour remplacer l'occurrence d'une sous-chaîne donnée par une autre sous-chaîne.
Syntaxe de la fonction
Le code suivant montre la syntaxe de la fonction replace() :
REPLACE(chaîne_source, sous-chaîne, chaîne_de remplacement);
La fonction accepte trois paramètres :
- chaîne_source – représente la chaîne source à rechercher.
- Sous-chaîne – définit la sous-chaîne à remplacer
- remplacement_chaîne – définit la chaîne ou le jeu de caractères qui sont substitués à la place de la sous-chaîne.
La fonction renvoie un type de chaîne avec toutes les occurrences de la sous-chaîne remplacées par replacement_string.
Exemples de fonctions Oracle Replace()
Les exemples suivants montrent comment la fonction se comporte sous divers paramètres et types d'entrée :
Exemple 1 - Remplacer l'occurrence de sous-chaîne
L'exemple ci-dessous illustre l'utilisation principale de la fonction replace() avec tous les paramètres d'entrée fournis.
select replace('Oracle database development', 'ab', 'xy') AS remplacédu double ;
La requête ci-dessus utilise la fonction replace() pour remplacer les caractères (ab) par (xy). Sortie résultante :
REMPLACÉ |
--------------------------+
Développement de base de données Oracle|
Exemple 2 - Utilisation de la fonction Replace pour supprimer une sous-chaîne
Comme mentionné, nous pouvons utiliser la fonction replace () pour supprimer une sous-chaîne de la chaîne source. Cela se produit lorsque nous ne fournissons pas la valeur de la sous-chaîne comme indiqué :
SELECT remplacer('https://linuxhint.com', 'https://') AS d FROM double;Résultat:
D |
--------------+
linuxhint.com|
Exemple 3 – Remplacer des valeurs dans un tableau
Nous utilisons souvent la fonction replace() pour remplacer des valeurs dans une table de base de données. Prenons l'exemple de tableau ci-dessous :
créer une table sample_data(
identifiant numéro,
prénom varchar2(50),
adresse_ip varchar2(20),
btc_address varchar2(50),
credit_card varchar2(50),
identifiant varchar2(40),
contrainte sample_pk clé primaire (id)
);
insérer dans sample_data (id, first_name, ip_address, btc_address, credit_card, identifier)
valeurs (11, 'Wallas', '169.158.70.77', '1CNz5d1d5SC8SaR6dFSVihwztqYx5Fg77q', '4017955174552',
'26811d77-0a3a-4397-bc33-f7835f7c7ab9');
insérer dans sample_data(id, first_name, ip_address, btc_address, credit_card, identifier)
valeurs (12, 'Ian', '148.190.10.178', '1ADxBV7n9JeDDcb8pL24J9wV54mcSRHdu7', '4017956704480827',
'a69fe590-bc1b-4001-8ff8-154bcdb5802d');
insérer dans sample_data (id, first_name, ip_address, btc_address, credit_card, identifier)
valeurs (13, 'Pasquale', '150.86.18.140', '126hVKom2Foy9LEA6M4pUAT1h97c2rSD8B', '4017953296787867',
'34ac9385-9e1e-4d13-9537-c4eedb9f2c35');
Déclaration avant la mise à jour :
SELECT FIRST_NAME, IP_ADDRESS, CREDIT_CARD FROM SAMPLE_DATA sd ;
Nous pouvons utiliser la fonction replace() pour remplacer toutes les occurrences de 4 dans la colonne credit_card par un 5.
MISE A JOUR SAMPLE_DATA SET CREDIT_CARD = REMPLACER(CREDIT_CARD, '4', '5');Après la déclaration de mise à jour :
Dans le tableau résultant, nous pouvons vérifier que les valeurs des colonnes credit_card ont été remplacées de 4 à 5.
Conclusion
Grâce à ce tutoriel, vous avez compris le fonctionnement de la fonction replace() dans les bases de données Oracle.