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