LTRIM Funzione scalare

La funzione LTRIM rimuove i byte dall'inizio di un'espressione stringa in base al contenuto di un'espressione trim.

Leggere il diagramma della sintassiSalta diagramma di sintassi visivoLTRIM(stringa-espressione ,trim-espressione )

Lo schema è SYSIBM.

La funzione LTRIM rimuove tutti i caratteri contenuti nell'espressione di taglio dall'inizio dell'espressione di stringa. La ricerca viene effettuata confrontando la rappresentazione binaria di ogni carattere (che consiste di uno o più byte) in trim-expression con i byte all'inizio di string-expression. Se l'espressione stringa è definita come FOR BIT DATA, la ricerca viene effettuata confrontando ogni byte nell 'espressione trim con il byte all'inizio dell'espressione stringa.

stringa-espressione
Un'espressione che specifica la stringa sorgente. L'argomento deve essere un'espressione che restituisce un valore che è un tipo di dati stringa incorporato che non è un LOB, o un tipo di dati numerico. Se il valore non è un tipo di dati stringa, viene implicitamente convertito in VARCHAR prima che la funzione venga valutata. Se l'espressione stringa non è FOR BIT DATA, l'espressione trim non deve essere FOR BIT DATA.
trim-espressione
Un'espressione che specifica i caratteri da rimuovere dall'inizio dell'espressione-stringa. L'espressione deve restituire un valore che sia un tipo di dati stringa incorporato che non sia un LOB, o un tipo di dati numerico. Se il valore non è un tipo di dati stringa, viene implicitamente convertito in VARCHAR prima che la funzione venga valutata.

Il valore predefinito per l'espressione di assetto dipende dal tipo di dati dell 'espressione di stringa :

  • Un DBCS vuoto se string-expression è una stringa grafica DBCS. Per ASCII, il CCSID determina il valore esadecimale che rappresenta uno spazio DBCS. Ad esempio, per il giapponese (CCSID 301), X'8140' rappresenta uno spazio DBCS, mentre per il cinese semplificato, X'A1A1' rappresenta uno spazio DBCS. Per EBCDIC, X'4040' rappresenta uno spazio DBCS.
  • Un valore vuoto " UTF-16 " o " UCS-2 " (X'0020') se string-expression è una stringa grafica Unicode.
  • Un valore di X'00' se stringa-espressione è una stringa binaria.
  • Altrimenti, un singolo byte vuoto. Per EBCDIC, X'40' rappresenta uno spazio vuoto. Se non EBCDIC, X'20' rappresenta uno spazio vuoto.

string-expression e trim-expression devono avere tipi di dati compatibili. Se string-expression e trim-expression hanno set CCSID diversi, trim-expression viene convertito nel CCSID di string-expression.

Il risultato della funzione dipende dal tipo di dati dell'espressione stringa :

  • VARCHAR se string-expression è una stringa di caratteri. Se string-expression è definito come FOR BIT DATA, il risultato è FOR BIT DATA.
  • VARGRAPHIC se stringa-espressione è una stringa grafica.
  • VARBINARY se stringa-espressione è una stringa binaria.

L'attributo lunghezza del risultato è uguale all'attributo lunghezza dell'espressione-stringa.

La lunghezza effettiva del risultato per un carattere o una stringa binaria è la lunghezza dell'espressione stringa meno il numero di byte rimossi. La lunghezza effettiva del risultato per una stringa grafica è la lunghezza (in numero di caratteri a doppio byte) dell'espressione della stringa meno il numero di caratteri a doppio byte rimossi. Se tutti i caratteri byte vengono rimossi, il risultato è una stringa vuota (la lunghezza è zero).

Il risultato può essere nullo; se l'argomento è nullo, il risultato è il valore nullo.

Il CCSID del risultato è lo stesso di quello dell'espressione stringa.

Note

Inizio del cambiamentoContenuto valido per l'immissione di stringhe miste EBCDIC:Fine modifica
Inizio del cambiamentoSe la stringa-espressione è una stringa mista EBCDIC, la stringa deve contenere dati misti EBCDIC validi.Fine modifica

Esempi

Esempio : utilizzare la funzione LTRIM per rimuovere singoli numeri nel secondo argomento dall'inizio del primo argomento:
SELECT LTRIM ('123DEFG123', '321'),
			 LTRIM ('12DEFG123', '321'),
			 LTRIM ('123123222XYZ22', '123'),
			 LTRIM ('12321', '213'),
			 LTRIM ('XYX123 ', '321')
   FROM SYSIBM.SYSDUMMY1

Il risultato è "DEFG123", "DEFG123", "XYZ22", "" (una stringa vuota - tutti i caratteri rimossi) e "XYX123" (nessun carattere rimosso).

La funzione LTRIM non rimuove le occorrenze di '1', '2' e '3' sul lato destro della stringa, dopo caratteri che non sono '1', '2' o '3'.

Esempio : utilizzare la funzione LTRIM per rimuovere singoli caratteri speciali nel secondo argomento dall'inizio del primo argomento:
SELECT LTRIM ('[[ -78]]', '- []')
   FROM SYSIBM.SYSDUMMY1

Il risultato è "78]]".

Esempio : utilizzare la funzione LTRIM per rimuovere i simboli del dollaro e i punti nel secondo argomento dall'inizio del primo argomento:
SELECT LTRIM ('...$V..$AR', '$.')
   FROM SYSIBM.SYSDUMMY1

Il risultato è "V..$AR".

Esempio : utilizzare la funzione LTRIM per tagliare caratteri X' D090 ' interi multibyte:
Supponiamo che queste stringhe siano codificate in UTF-8.
SELECT LTRIM (X'D090D091D092', X'D090')  
   FROM SYSIBM.SYSDUMMY1

Il risultato è X'D091D092'.

Si noti che la funzione non rimuove i singoli byte x' D0 ' e x'90'.