Я пытаюсь взять последние четыре символа только из поля varchar. Все ряды разной длины. Какую функцию мне следует использовать для этого?
Ответы:
Правильно надо делать:
select RIGHT('abcdeffff',4)
SUBSTR(column, LENGTH(column) - 3, 4)
LENGTH
возвращает длину строки и SUBSTR
возвращает 4 символа из «длина позиции - 4»
SUBSTR(column, LENGTH(column) - 3, 4)
. Если длина равна 4, нам нужно начать с позиции 1 и взять 4 символа.
RIGHT ( character_expression , integer_expression )
SELECT RIGHT(column, 4) FROM ...
Также список других строковых функций .
Используйте RIGHT()
функцию: http://msdn.microsoft.com/en-us/library/ms177532(v=sql.105).aspx
SELECT RIGHT( '1234567890', 4 ); -- returns '7890'
Для Oracle SQL SUBSTR(column_name, -# of characters requested)
извлекает последние три символа для данного запроса. например
SELECT SUBSTR(description,-3) FROM student.course;
проверенное решение на хакерранке ....
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');