sqlserver 2008将字符符串中小数和字母隔离开
时间: 2024-04-30 11:20:44 浏览: 94
SQL2008对表名及字段区分大小写
4星 · 用户满意度95%
如果你想将字符串中的小数和字母隔离开,可以使用以下 T-SQL 语句:
```sql
DECLARE @string VARCHAR(50)
SET @string = 'abc123.45def'
SELECT SUBSTRING(@string, 1, PATINDEX('%[^0-9]%', @string)-1) AS AlphaPart,
SUBSTRING(@string, PATINDEX('%[0-9]%', @string), LEN(@string)) AS NumericPart
```
这里使用了 `PATINDEX` 函数,它可以返回一个字符串中匹配某个模式的第一个字符的位置。例如,`PATINDEX('%[^0-9]%', @string)` 返回的是字符串 `@string` 中第一个非数字字符的位置。
上述代码中,我们将字符串分为两部分,一部分是字母部分,另一部分是小数部分。字母部分使用 `SUBSTRING` 函数和 `PATINDEX` 函数进行提取,小数部分使用 `SUBSTRING` 函数和 `LEN` 函数进行提取。
阅读全文