Я использую db2 v.9.1 на сервере Windows 2003, поэтому он не может использовать скалярные функции LPAD или RPAD. потому что эти функции поддерживают только z / OS, верно?
Теперь я использую этот способ для нулевой площадки, когда тип COLUMN1 - VARCHAR
RIGHT('0000' || COLUMN1 ,4) AS RPAD
LEFT('0000' || COLUMN1 ,4) AS LPAD
Есть лучший способ заменить функцию LPAD или RPAD?


Я думаю, вам, вероятно, понадобится скалярная функция ПОВТОРИТЬ.
REPEAT('0',4) || column_name
Теперь, если вы хотите ограничить 0 на основе количества символов, вы можете использовать функцию RIGHT, и это будет выглядеть примерно так, если ваш столбец - varchar(10):
RIGHT(REPEAT('0',4) || column_name, 10) в этом случае, если у вас есть символы, он заполнит его 4 предшествующими нулями, но если у вас 7 символов, он заполнит его 3 нулями.
Итак, у вас будет:
00001,
000012,
0000123,
00001234,
000012345,
0000123456,
0001234567,
0012345678,
и т.п.
Не должно быть? LEFT (COLUMN1 || '0000', 4) AS RPAD RIGHT ('0000' || COLUMN1, 4) AS LPAD