LPAD без обрезки для струн большей длины - PullRequest
0 голосов
/ 31 марта 2020

У меня есть запрос к следующему вводу и результатам.

MariaDB [db]> select LPAD('COMP1', 8, 'X');
+-----------------------+
| LPAD('COMP1', 8, 'X') |
+-----------------------+
| XXXCOMP1              |
+-----------------------+

В приведенном выше примере вы видите, что вход "COMP1" имеет длину 5, из-за чего LPAD имеет префикс 3 дополнительная строка PADDED. Теперь, если длина входа выше предела 8. он должен получиться как есть, без обрезки содержимого.

MariaDB [db]> select LPAD('COMP1', 8, 'X');
+-----------------------+
| LPAD('COMP10199', 8, 'X') |
+-----------------------+
| COMP1019              |
+-----------------------+

Он был обрезан здесь, где ожидаемое значение в моем требовании равно COMP10199, я не могу sh использовать условие IF для проверки длины. Я ищу альтернативу LPAD, где более высокие значения длины не должны быть урезаны. или пользовательская агрегатная функция.

...