提取不以特定单词结尾的值

10 sql sql-server

我有一张包含一些数据的表格.它可以看起来像这样的例子:

7   Gelb    
8   Schwarz
9   Weiß my color
10  Grau
16  Gelb I  
17  Gelb II 
18  Gelb III    
19  Gelb IV 
27  Schwarz I   
28  Schwarz II  
29  Schwarz III 
30  Schwarz IV  
31  Schwarz V   
32  Schwarz VI  
39  Weiß my color III   
40  Weiß my color IV    
41  Weiß my color V 
42  Weiß my color VI    
Run Code Online (Sandbox Code Playgroud)

如您所见,在某些记录中,我们在常规中使用罗马数字 <name><space><roman number>

例如,有"Gelb","Weiß我的颜色""Schwarz",在罗马会议中也有他们的记录.对于一些人来说,像"Grau",没有重复.

因此,将会有没有罗马数字的唯一颜色名称的记录,例如记录"Grau",并且在表格中它可以包含或不包含一些带有它的记录和罗马数字.

罗马数字总是在最后,如: <name><space><romannumber>

我的目标只是获得独特的名字.因此,我只想提取示例:

7   Gelb    
8   Schwarz    
9   Weiß my color   
10  Grau  
Run Code Online (Sandbox Code Playgroud)

我怎样才能实现这一目标?

我从这开始,这就够了吗?

Select Id, Name From MyTable Where Name Not Like = '%<space><anyromancharacter>'
Run Code Online (Sandbox Code Playgroud)

我无法改变数据库的结构.

bac*_*ack 4

更新

\n\n
select * from dbo.test\nWhere value not Like '%[MDILXV]_' Collate SQL_Latin1_General_CP1_CS_AS\n
Run Code Online (Sandbox Code Playgroud)\n\n

步骤1 :

\n\n
select * from dbo.test\n\n    id  value\n    1   Gelb\n    2   Gelb I\n    3   Wei\xc3\x9f my color III\n    4   Wei\xc3\x9f my color\n
Run Code Online (Sandbox Code Playgroud)\n\n

当我给予

\n\n
   select * from dbo.test\n    Where value not Like '%[IXLV]' Collate SQL_Latin1_General_CP1_CS_AS\n\nid  value\n1   Gelb\n4   Wei\xc3\x9f my color\n
Run Code Online (Sandbox Code Playgroud)\n