Я просто столкнулся с интересной проблемой, связанной с попыткой обрезать ведущие нули из нечислового поля в SQL. (Так как он может содержать символы, он не может быть просто преобразован в число, а затем обратно.)
Вот что мы в итоге использовали:
SELECT REPLACE(LTRIM(REPLACE(fieldWithLeadingZeroes,'0',' ')),' ','0')
Он заменяет нули пробелами, левая их обрезает, а затем снова возвращает нули. Я думал, что это очень умный и интересный способ сделать это, хотя и не настолько читабельным, если вы никогда раньше не сталкивались с ним.
Есть ли более четкие способы сделать это? Есть ли более эффективные способы сделать это? Или любые другие способы сделать этот период? Я был заинтригован этой проблемой и был бы заинтересован увидеть любые способы обойти ее.