我正在处理一个SQL查询,它从SQLServer数据库读取数据,生成一个提取文件.从一个简单的VARCHAR(10)字段中删除前导零的要求之一.因此,例如,如果字段包含"00001A",SELECT语句需要将数据返回为"1A".

SQL中有没有一种方法可以通过这种方式轻松删除前导零?我知道有一个RTRIM函数,但这似乎只是删除空格.

推荐答案

select substring(ColumnName, patindex('%[^0]%',ColumnName), 10)

Sql相关问答推荐

如何解决Error:operator is not unique:unknown—unknown在一个动态SQL查询?""""

使用SQL旋转表的列(Snowflake)

SQL—如何根据2列填写缺失的值

更新在两个或多个面中具有交点的面

基于多个字段删除Access中的重复记录,同时保留最低优先级

有没有办法在每次计算每一行的数据时更新2个值?

雅典娜嵌套Json提取液

PostgreSQL抽奖查询

Oracle 23c ROUND,数据类型为DATE

多条件SQL排序行为

两个月之间的WHERE CASE WHEN-ORA-00905:缺少关键字

PostgreSQL中递归CTE查询的故障过滤

通过UPDATE SELECT更新表时出现问题

在 Oracle 21c 中透视文本值

汇总具有连续日期范围的行

BigQuery数组是否包含NULL值的判断方法

将有效数字作为 varchar 返回的 SQL 函数

多列上的 SQL UNIQUE 约束 - 它们的组合必须是唯一的还是至少其中之一?

PostgreSQL 如何在一组项目及其数量上找到完全相同的订单?

SQL - 使用子查询返回多行的 LIKE 命令