永发信息网

sql server 中如何将某个表中某列中在最后含有()的项目筛选出然后删除???

答案:3  悬赏:0  手机版
解决时间 2021-02-07 02:42
  • 提问者网友:情歌越听越心酸
  • 2021-02-06 01:53
例如下表:
name title id others

jack(中国) 1 556 no

jet(北方) 2 665 no

ti(美国)m 3 776 no

li(英国)sa 3 667 no

lily 3 777 no

cathe 1 778 no
我就是要把像jack(中国) jet(北方) 这样的筛选出来然后将 (中国) (北方) 删掉。
注意:像ti(美国)m 、li(英国)sa 不需要做任何修改或删除;
修改完成后的表应该是这样的:
name title id others

jack 1 556 no

jet 2 665 no

ti(美国)m 3 776 no

li(英国)sa 3 667 no

lily 3 777 no

cathe 1 778 no
具体应该怎么实现?请详细告知,非常感谢!!!
最佳答案
  • 五星知识达人网友:狂恋
  • 2021-02-06 03:03
如果每个里面都只会有一对(),则可以如下处理

update 表 set name = left(name,charindex('(',name,1) - 1 )
where right(name,1) = ')'
全部回答
  • 1楼网友:天凉才是好个秋
  • 2021-02-06 04:46
select distinct prof,tname from (select * from 表名 where depart='计算机系' or depart='电子工程系');
  • 2楼网友:玩世
  • 2021-02-06 03:39
delete from 表 where id in(select id from 表 where Substring(name,len(name)-1,len(name)=')')
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯