在SQL2000表中有一堆数据,怎样提取第一个指定字符和最后一个指定之间的所有字符?

有没有人在啊,想请说下,在SQL2000表中有一堆数据,怎样提取第一个指定字符和最后一个指定之间的所有字符??

如:我有以下一堆数据:
三星-L-9201-黑色
三星-9108-白色
HTC-R-2548-黑色
LG-2563t-红色
如题,我应该如何提取第一个‘-’和最后一个‘-’之间的所有字符?我想要的结果是:
L-9201
9108
R-2548
2563t
最新回答
素颜繁华梦

2024-06-08 22:13:15

select substring(字段名,charindex('-',字段名,0)+1,len(字段名)-charindex('-',reverse(字段名),0)-charindex('-',字段名,0))
from 表名

substring是截取函数
charindex是算特定符号位置的函数
reverse是把字符串排反序的函数

了解一下这三个函数吧,这句你就应该懂了,我这句刚才试验了一下,没问题,环境sqlserver2000