如何写sql 语句,能删除字段中某个字符到最后字符串的?

2025-01-05 03:28:05
推荐回答(3个)
回答1:

sqlserver的话用charindex截取到你要的字符位置,用left函数截取,后面的自然就没了
left(col,charindex('字符',col)-1)
-----------------
删除指定字符到指定的其他字符,要用stuff函数
stuff(col,charindex('字符',col),charindex('其他字符',col)-charindex('字符',col)+1,'')
不知道你包含不包含这两个字符,上面的语句是同时去除两个字符的,若不去除
stuff(col,charindex('字符',col)+,charindex('其他字符',col)-charindex('字符',col)-1,'')

回答2:

你是什么数据库?mysql
按照第一个*号前面的字符串分组
然后汇总
select
a,sum(b)
from
pppppp.tablename1
group
by
substring_index(a,'*',1)
limit
0,
50
按照第二个*前面的字符串分组
然后汇总
select
a,sum(b)
from
pppppp.tablename1
group
by
substring_index(a,'*',2)
limit
0,
50

回答3:

declare@avarchar(50)
set@a='2009年7月15日星期五'
selectsubstring(@a,1,4)
--获取年份2009
declare@bint
set@b=patindex('%日%',@a)
--获取'日'这个字符在字符串中的位置,即10
selectsubstring(@a,6,@b-5)
--获取日期'7月15日'