molte funzioni Transact-SQL (T-SQL) funzionano anche in SQL e viceversa
modifica
- CONCAT(stringa1,stringa2,...) concatena le stringhe
utilizzabile anche l'operatore +
- REPLACE(stringa origine, stringa da cercare, stringa con cui sostuire)
sostituisce con una sottostringa con un'altra sottostringa in una stringa di origine specificata
attento se la stringa di orgine é vuota potrebbe dare errore
verifica con IIF
(SQL - funzioni - analisi/verifica - condizione)
esempio: togli la virgola e il double space dal nome
REPLACE(REPLACE(NOME,',',' '),' ',' ')) AS NOME
- UCASE(NOME_CAMPO) restituisce la stringa in maiuscolo
- UPPER(stringa) (T-SQL)
- LCASE(NOME_CAMPO) restituisce la stringa in minuscolo
- LOWER(stringa) (T-SQL)
- FORMAT(NOME_CAMPO, 'formato')
per impostare il formato di visualizzazione di un campo
formati
- SPACE(numero) (T-SQL)
crea una stringa di spazi, la sua lunghezza è indicata dal numero intero nell’argomento
- REPLICATE(stringa, numero) (T-SQL)
ripete una stringa un certo numero di volte, indicato dal numero intero nell’argomento
- STUFF(stringa origine, inizio, lunghezza, stringa sostutisci) (T-SQL)
elinima una determinata porzione di stringa sostituendolo con un’altra, partendo da uno specifico punto di partenza
- REVERSE(stringa) (T-SQL)
inverte una stringa
- TRIM(stringa)
ritorna una stringa dopo averla ripulita degli spazi a sinistra e destra
- LTRIM(stringa) (T-SQL)
ritorna una stringa dopo averla ripulita degli spazi più a sinistra
- RTRIM(stringa) (T-SQL)
ritorna una stringa dopo averla ripulita degli spazi più a destra
non esiste in T-SQL TRIM() da usare LTRIM + RTRIM
estrazione
- LEFT(NOME_CAMPO, lunghezza) estrae da sinistra i numero di caratteri indicati dal testo della stringa del campo indicato
esempio: cerco un testo "ciao" se presente restituisce il testo fino a "ciao" , altrimenti tutto il campo testo
IIF(INSTR(`CAMPO TESTO`,'ciao')-1 > 0, LEFT(`CAMPO TESTO`, INSTR(`CAMPO TESTO`,'ciao')-1),`CAMPO TESTO`)
- RIGHT(NOME_CAMPO, lunghezza) estrae da destra i numero di caratteri indicati dal testo della stringa del campo indicato
- MID(NOME_CAMPO, pos iniziale, lunghezza (opzione)) estrae il testo della stringa del campo da una certa posizione per una certa lunghezza
- SUBSTRING(stringa, inizio, lunghezza) (T-SQL)
ricerca/analisi
- LEN(NOME_CAMPO) lunghezza stringa del campo
- DATALENGTH(stringa) (T-SQL)
esempio: tutti i nomi con meno di 5 caratteri
WHERE LEN(NOME_CAMPO) < 5
- INSTR("stringa origine", "stringa da cercare", posizione di partenza (opzione)) restituisce la posizione del testo cercato in una stringa indicata
INSTR(`CAMPO TESTO`,'ciao')
si usa anche nelle WHERE per filtrare i campi con un determinato testo
WHERE INSTR(`CAMPO TESTO`,'ciao')>0 campi che contengono 'ciao'
se non funzione usa semplicemente i caratteri jolly
WHERE `CAMPO TESTO` LIKE '%ciao%'
- CHARINDEX(stringa origine , stringa da cercare, inizio opzionale ) (T-SQL)
ritorna la posizione di partenza di una stringa all’interno di un’altra stringa, come numero intero
non funziona con Excel
conversione
- ASCII(stringa) (T-SQL)
ritorna il codice ASCII per il carattere più a sinistra della stringa
- CHAR(numero) (T-SQL)
converte un intero rappresentante il codice ASCII in una stringa