Я использую базу данных Oracle и нуждаюсь в том, чтобы обрезать некоторые ведущие нули, но мне нужно оставить достаточно больших нулей, чтобы заполнить длину поля не менее 4 символами. Это некоторые выборочные данные, где «MyField» является входной и «приготовленное» является то, что я хочу в качестве выхода:sql trim некоторые ведущие 0
myField cooked
0000000009 0009
000
00ABCE1234 ABCE1234
Я использовал это, чтобы достичь своей цели, но было интересно, если есть лучший способ
case
when length(trim(leading 0 from myfield)) >= 4 then trim(leading 0 from myfield)
else lpad(trim(leading 0 from myfield), 4 , 0)
end as cooked