我刚刚遇到了一个有趣的问题,即尝试从 SQL 中的非数字字段中修剪前导零。(由于它可以包含字符,它不能只是转换为数字然后再返回。)
这就是我们最终使用的:
SELECT REPLACE(LTRIM(REPLACE(fieldWithLeadingZeroes,'0',' ')),' ','0')
它用空格替换零,然后修剪它,然后将零放回原处。我认为这是一种非常聪明且有趣的方法,尽管如果您以前从未遇到过它,它的可读性就不那么高了。
有没有更清晰的方法来做到这一点?有没有更有效的方法来做到这一点?或者任何其他方式来做这个时期?我对这个问题很感兴趣,并且有兴趣看到任何解决它的方法。