Мне нужно получить последние 5 чисел, используя mysql.Получение последних 5 символов строки с запросом mysql
Мои ценности подобны YOT-A78514
, LOP-C4521
...
я должен получить только последние пять полукокса. Как я могу сделать это в запросе?
Мне нужно получить последние 5 чисел, используя mysql.Получение последних 5 символов строки с запросом mysql
Мои ценности подобны YOT-A78514
, LOP-C4521
...
я должен получить только последние пять полукокса. Как я могу сделать это в запросе?
Вы можете сделать это с помощью функции RIGHT(str,len). Возвращает крайние правые Len символы из строки ул,
Как показано ниже:
SELECT RIGHT(columnname,5) as yourvalue FROM tablename
Я не могу заставить себя делать +1 здесь. –
Right
является хорошим выбором, но вы также можете использовать substring
как this-
SELECT Substring(columnname,-5) as value FROM table_name
SELECT row_id
FROM column_name
WHERE column_value LIKE '%12345';
Это вернет «row_id», когда «12345» окажется хвостом uffix "column_value" в пределах "column_name".
Это хороший ответ для тех, кто хочет применить фильтр в предложении WHERE. – Kvvaradha
И если вы хотите, чтобы получить динамичное количество правильных символов после символа:
SELECT TRIM(
RIGHT(
database.table.field,
(LENGTH(database.table.field) - LOCATE('-',database.table.field))
)
)
FROM database.table;
«Право» -функция является способом, с помощью подстроки может привести к проблеме, которая не так просто заметить:
mysql> select right('hello', 6);
+-------------------+
| right('hello', 6) |
+-------------------+
| hello |
+-------------------+
1 row in set (0.00 sec)
mysql> select substring('hello', -6);
+------------------------+
| substring('hello', -6) |
+------------------------+
| |
+------------------------+
1 row in set (0.00 sec)
Но если не пытаться пройти в начале строки, то подстрока, конечно, работает отлично:
mysql> select substring('hello', -5);
+------------------------+
| substring('hello', -5) |
+------------------------+
| hello |
+------------------------+
1 row in set (0.00 sec)
ты нас php? –
@t q: почему это имеет значение? – zerkms
Почему вы не смотрите на ответ здесь? https://stackoverflow.com/questions/12504985/how-to-take-last-four-characters-from-a-varchar –