SQL - 如果列以数字开头,则添加字母前缀

时间:2015-12-30 15:19:04

标签: sql sql-server tsql

我正在研究一个项目,当任何结果以数字开头时会搞乱,例如01。

我试图花一些时间来讨论如何以列号开头的方式将前缀应用到列中,尽管我被卡在条件部分上。

SELECT 'a' + CAST(ID AS VARCHAR(MAX)) FROM table

如果ID以数字开头,我怎样才能将条件应用于选择?

1 个答案:

答案 0 :(得分:2)

您可以使用case

SELECT (CASE WHEN id LIKE '[0-9]%' THEN 'a' +  id
             ELSE id
        END) as newID
FROM table;

ID可能是一个字符串,因此您无需将其强制转换为varchar()