Ich versuche, die letzten vier Zeichen nur aus einem Varchar-Feld zu entnehmen. Alle Reihen sind unterschiedlich lang. Welche Funktion sollte ich verwenden, um dies zu erreichen?
Ich versuche, die letzten vier Zeichen nur aus einem Varchar-Feld zu entnehmen. Alle Reihen sind unterschiedlich lang. Welche Funktion sollte ich verwenden, um dies zu erreichen?
Antworten:
Richtig sollte tun:
select RIGHT('abcdeffff',4)
SUBSTR(column, LENGTH(column) - 3, 4)
LENGTH
Gibt die Länge der Zeichenfolge zurück und SUBSTR
gibt 4 Zeichen von "der Positionslänge - 4" zurück.
SUBSTR(column, LENGTH(column) - 3, 4)
. Wenn die Länge 4 beträgt, müssen wir an Position 1 beginnen und 4 Zeichen nehmen.
RIGHT ( character_expression , integer_expression )
SELECT RIGHT(column, 4) FROM ...
Auch eine Liste anderer String-Funktionen .
Verwenden Sie die RIGHT()
Funktion: http://msdn.microsoft.com/en-us/library/ms177532(v=sql.105).aspx
SELECT RIGHT( '1234567890', 4 ); -- returns '7890'
SUBSTR(column_name, -# of characters requested)
Extrahiert für Oracle SQL die letzten drei Zeichen für eine bestimmte Abfrage. z.B
SELECT SUBSTR(description,-3) FROM student.course;
getestete Lösung auf 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');