如果不是数字,我想删除字符串的最后一个字符。
输入栏
atg167d
atg645
MSC587f
atg6692
输出列
atg167
atg645
MSC587
atg6692
最佳答案
您可以使用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 Fiddle here
关于mysql - 如果最后一个字符不是数字,则删除它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26047128/