Sto cercando di prendere gli ultimi quattro caratteri solo da un campo varchar. Tutte le file hanno lunghezze diverse. Quale funzione dovrei usare per ottenere questo risultato?
Risposte:
SUBSTR(column, LENGTH(column) - 3, 4)
LENGTH
restituisce la lunghezza della stringa e SUBSTR
restituisce 4 caratteri dalla "lunghezza della posizione - 4"
SUBSTR(column, LENGTH(column) - 3, 4)
. Se la lunghezza è 4, dobbiamo iniziare dalla posizione 1 e prendere 4 caratteri.
RIGHT ( character_expression , integer_expression )
SELECT RIGHT(column, 4) FROM ...
Anche un elenco di altre funzioni di stringa .
Usa la RIGHT()
funzione: http://msdn.microsoft.com/en-us/library/ms177532(v=sql.105).aspx
SELECT RIGHT( '1234567890', 4 ); -- returns '7890'
Per Oracle SQL, SUBSTR(column_name, -# of characters requested)
estrarrà gli ultimi tre caratteri per una determinata query. per esempio
SELECT SUBSTR(description,-3) FROM student.course;
soluzione testata su hackerrank ....
select distinct(city) from station
where substr(lower(city), length(city), 1) in ('a', 'e', 'i', 'o', 'u') and substr(lower(city), 1, 1) in ('a', 'e', 'i', 'o', 'u');