我想跳过第一个破折号以从第二个破折号中选择数据。

我使用了以下功能,从中我可以获得唯一的FLR

replace(right([Bin Code], charindex('-', reverse([Bin Code]))),'-','')

单元格包含此值

0771-B-3RD-FLR

期望的输出

3RD-FLR

最佳答案

一种方法是一次仅将一个连字符替换为一个字符串:

select t.*, v2.bin_code
from t cross apply
     (values (stuff(t.bin_code, 1, charindex('-', t.bin_code), '')
     ) v(bin_code)(bin_code) cross apply
     (values (stuff(v1.bin_code, 1, charindex('-', v1.bin_code), '')
     ) v2(bin_code)(bin_code) ;

08-06 18:26