删除最后一个字符,如果它不是数字

时间:2014-09-25 20:04:21

标签: mysql

如果不是数字,我想删除字符串的最后一个字符。

输入栏
atg167d
atg645
msc587f
atg6692

输出栏
atg167
atg645
msc587
atg6692

1 个答案:

答案 0 :(得分:1)

您可以使用SUBSTR(inputColumn, -1)获取最后一个字符,然后检查它是否在“0”和“9”之间。如果是,则列以数字结尾。如果没有,请使用SUBSTR删除最后一个字符:

SELECT
  CASE
    WHEN SUBSTR(inCol, -1) BETWEEN '0' AND '9' THEN inCol
    ELSE SUBSTR(inCol, 1, LENGTH(inCol) - 1)
    END AS outCol
FROM myTable

有一个有效的SQL小提琴here