Condividi tramite


REPLICATE (SSIS)

Restituisce un'espressione di caratteri ripetuta per il numero di volte specificato. L'argomento times deve restituire un valore integer.

[!NOTA]

La funzione REPLICATE utilizza spesso stringhe lunghe e pertanto è più facile che un'espressione superi il limite di 4000 caratteri di lunghezza. Se il risultato della valutazione di un'espressione ha il tipo di dati Integration Services DT_WSTR o DT_STR, l'espressione verrà troncata a 4000 caratteri. Se il tipo di risultato di una sottoespressione è DT_STR o DT_WSTR, probabilmente la sottoespressione verrà troncata a 4000 caratteri, indipendentemente dal tipo di risultato dell'espressione globale. Le conseguenze del troncamento possono essere gestite normalmente oppure generare un avviso o un errore. Per ulteriori informazioni, vedere Sintassi (SSIS).

Sintassi

REPLICATE(character_expression,times)

Argomenti

  • character_expression
    Espressione di caratteri da replicare.

  • times
    Espressione integer che specifica il numero di volte per cui replicare character_expression.

Tipi restituiti

DT_WSTR

Osservazioni

Se times ha valore 0, la funzione restituirà una stringa di lunghezza zero.

Se times è un numero negativo, la funzione restituirà un errore.

L'argomento times può utilizzare anche variabili e colonne.

È possibile utilizzare REPLICATE solo con il tipo di dati DT_WSTR. Se l'argomento character_expression è un valore letterale stringa o una colonna di dati con tipo di dati DT_STR, prima di eseguire l'operazione prevista da REPLICATE verrà eseguito il cast implicito al tipo di dati DT_WSTR. Per gli altri tipi di dati è necessario il cast esplicito al tipo di dati DT_WSTR. Per ulteriori informazioni, vedere Tipi di dati di Integration Services e Cast (SSIS).

Se l'argomento è Null, REPLICATE restituirà Null.

Esempi

In questo esempio un valore letterale stringa viene replicato tre volte. Il risultato restituito è "Mountain BikeMountain BikeMountain Bike".

REPLICATE("Mountain Bike", 3)

In questo esempio i valori nella colonna Name vengono replicati per il numero di volte indicato dal valore della variabile Times. Se Times ha valore 3 e Name contiene Touring Front Wheel, il risultato restituito sarà Touring Front WheelTouring Front WheelTouring Front Wheel.

REPLICATE(Name, @Times)

In questo esempio i valori nella variabile Name vengono replicati per il numero di volte indicato dal valore nella colonna Times. Tale variabile ha un tipo di dati diverso da integer e l'espressione include un cast esplicito a un tipo di dati integer. Se Name contiene il testo Helmet e Times ha valore 2, il risultato restituito sarà "HelmetHelmet".

REPLICATE(@Name, (DT_I4(Times))

Vedere anche

Altre risorse