如题,有表sheet1,里面有mc字段如下:
mc
地方(河西)事务所
地方(河西)事务所(分部1)
地方事务所(分部1)
地方事务所
想把mc列,字段后面的括号(包括括号本身)都删除掉,字段中间的保留,应该得到如下表:
mc
地方(河西)事务所
地方(河西)事务所
地方事务所
地方事务所谢谢
mc
地方(河西)事务所
地方(河西)事务所(分部1)
地方事务所(分部1)
地方事务所
想把mc列,字段后面的括号(包括括号本身)都删除掉,字段中间的保留,应该得到如下表:
mc
地方(河西)事务所
地方(河西)事务所
地方事务所
地方事务所谢谢
解决方案 »
- 求指点!这种情况下的sql语句怎么写?谢谢
- 使用这些ExecuteReader,Sqlcommand类需要导那些jar包
- SQL2005为什么安装后在“事件察看-->应用程序”那里会不断产生.NET Runtime Optimization Service的时间的?
- sql 2005 连接两个表中的问题
- 这条SQL语句有错误吗,为什么在SQL Server中可以用,在Access中就不行了
- 求SQL语句!
- 征集使用Sql Server朋友们的QQ号码。!
- 按平均分统计人数。
- 帮忙啊各位,一个查询的小问题,多谢了
- 如何输入图片字段
- 事务作业同步数据报错
- 显示group by的聚合结果并显示每一行
then substring(mc,1,len(mc)-charindex(')',reverse(mc),1))
else mc end as mc
from tb
declare @str varchar(40)
set @str = '地方(河西)事务所(分部1)'select case when left(reverse(@str),1)=')'
then substring(@str,1,len(@str)-charindex('(',reverse(@str),1))
else @str end as mc
/********************mc
----------------------------------------
地方(河西)事务所(1 行受影响)
正确的:
select case when left(reverse(mc),1)=')'
then substring(mc,1,len(mc)-charindex('(',reverse(mc),1))
else mc end as mc
from tb
declare @mc table (colname varchar(23))
insert into @mc
select '地方(河西)事务所' union all
select '地方(河西)事务所(分部1)' union all
select '地方事务所(分部1)' union all
select '地方事务所'select case when right(colname,1)=')'
then left(colname,len(colname)-charindex('(',reverse(colname))) else colname end from @mc
/*
地方(河西)事务所
地方(河西)事务所
地方事务所
地方事务所
*/
insert into tb
select '地方(河西)事务所' union
select '地方(河西)事务所(分部1)' union
select '地方事务所(分部1)' union
select '地方事务所'
update tb set mc=REVERSE(right(REVERSE(mc),len(mc)-CHARINDEX('(',REVERSE(mc))))
where RIGHT(mc,1)=')'
select * from tb
/*
mc
------------------------------
地方(河西)事务所
地方(河西)事务所
地方事务所
地方事务所