Come: |
Lingue disponibili: reporting
La funzione SUBSTR estrae una sottostringa in base alla posizione di inizio e fine nella stringa d'origine. SUBSTR può variare la posizione della sottostringa, a seconda dei valori di altri campi.
SUBSTR(length, source_string, start, end, sublength, output)
dove:
Valore intero
Numero di caratteri in source_string, o un campo che contiene la lunghezza.
Alfanumerico
La stringa da cui estrarre una stringa secondaria racchiusa tra virgolette singole, o il campo contenente la stringa principale.
Valore intero
Posizione iniziale della sottostringa nella stringa d'origine. Se l'inizio è inferiore o superiore alla lunghezza, la funzione restituisce spazi.
Valore intero
Posizione finale della sottostringa. Se questo argomento è inferiore all'inizio o superiore alla lunghezza, la funzione restituisce spazi.
Valore intero
Il numero in caratteri nella stringa secondaria (di solito fine - inizio + 1). Se sublenght è superiore a fine - inizio +1, la stringa secondaria si riempie con spazi finali. Se inferiore, la stringa secondaria viene troncata. Questo valore deve essere la lunghezza dichiarata di output. Solo i caratteri sottolunghezza verranno elaborati.
Alfanumerico
Campo che contiene il risultato, o il formato del valore di emissione racchiuso tra virgolette singole.
POSIT determina la posizione della prima lettera I in LAST_NAME e memorizza il risultato in I_IN_NAME. SUBSTR quindi estrae tre caratteri che iniziano con la lettera I da LAST_NAME e memorizza i risultati in I_SUBSTR.
TABLE FILE EMPLOYEE PRINT COMPUTE I_IN_NAME/I2 = POSIT(LAST_NAME, 15, 'I', 1, 'I2'); AND COMPUTE I_SUBSTR/A3 = SUBSTR(15, LAST_NAME, I_IN_NAME, I_IN_NAME+2, 3, I_SUBSTR); BY LAST_NAME WHERE DEPARTMENT EQ 'PRODUCTION' END
L'emissione è:
LAST_NAME I_IN_NAME I_SUBSTR --------- --------- -------- BANNING 5 ING IRVING 1 IRV MCKNIGHT 5 IGH ROMANS 0 SMITH 3 ITH STEVENS 0
Poiché i nomi Roman e Steven non presentano I nei loro nomi, SUBSTR estrae una stringa vuota.
WebFOCUS |