大多数数据库都支持left()
,所以你可以这样做:
select id, (case when left(time, 1) between 'a' and 'z' or left(time, 1) between 'A' and 'Z' then SSS else TIN end) as Legal_Doc_no from tbl1;
根据数据库的不同,可能还有其他解决方案.
在SQL Server中,您可以执行以下操作:
select id, (case when time like '[a-z]%' then SSS else TIN end) as Legal_Doc_no from tbl1;
如果您有一个区分大小写的排序规则,那么您需要考虑到这一点:
select id, (case when lower(time) like '[a-z]%' then SSS else TIN end) as Legal_Doc_no from tbl1;