REPLACE (Transact-SQL)

 

CETTE RUBRIQUE S’APPLIQUE À : ouiSQL Server (à partir de la version 2008)ouiAzure SQL DatabaseouiAzure SQL Data WarehouseouiParallel Data Warehouse

Remplace toutes les occurrences d'une valeur de type chaîne spécifiée par une autre valeur de type chaîne.

Topic link icon Conventions de la syntaxe Transact-SQL

-- Syntax for SQL Server, Azure SQL Database, Azure SQL Data Warehouse, Parallel Data Warehouse  
  
REPLACE ( string_expression , string_pattern , string_replacement )  

expression_chaîne
Est la chaîne expression à rechercher. string_expression peut être de type binaire ou caractère.

valeurmodèle
Correspond à la sous-chaîne à rechercher. string_pattern peuvent être de type binaire ou caractère. string_pattern ne peut pas être une chaîne vide («) et ne doit pas dépasser le nombre maximal d’octets qui tienne sur une page.

valeurremplacement
Est la chaîne de remplacement. string_replacement peuvent être de type binaire ou caractère.

Retourne nvarchar Si l’un des arguments d’entrée est de la nvarchar type de données ; sinon, REPLACE retourne varchar.

Retourne NULL si n'importe lequel des arguments a pour valeur NULL.

Si string_expression n’est pas de type varchar (max) ou nvarchar (max), REMPLACEZ tronque la valeur de retour à 8 000 octets. Pour retourner des valeurs supérieures à 8 000 octets, string_expression doit être explicitement convertie en un type de données de valeur élevée.

REPLACE effectue des comparaisons basées sur le classement de l'entrée. Pour effectuer une comparaison dans un classement spécifique, vous pouvez utiliser COLLATE pour appliquer un classement explicite à l’entrée.

0 x&0000; (char(0)) est un caractère indéfini dans les classements Windows et ne peut pas être inclus dans REPLACE.

L'exemple suivant remplace la chaîne cde dans abcdefghi par xxx.

SELECT REPLACE('abcdefghicde','cde','xxx');  
GO  

Voici l'ensemble des résultats.

------------  
abxxxfghixxx  
(1 row(s) affected)  

L'exemple suivant utilise la fonction COLLATE.

SELECT REPLACE('This is a Test'  COLLATE Latin1_General_BIN,  
'Test', 'desk' );  
GO  

Voici l'ensemble des résultats.

------------  
This is a desk  
(1 row(s) affected)  

L'exemple suivant remplace la chaîne cde dans abcdefghi par xxx.

SELECT REPLACE('abcdefghicde','cde','xxx');  

Voici l'ensemble des résultats.

--------------------------

abxxxfghixxx

Types de données ( ; Transact-SQL ) ;
Fonctions de chaîne ( ; Transact-SQL ) ;

Ajouts de la communauté

AJOUTER
Afficher: