想从SQL Server列中获取sku的特定部分

时间:2016-07-14 09:32:33

标签: sql sql-server

我希望sku的第一个字母从左到第-。但在输出中我不希望第二个-出现。

我的输入表是

Input table

查询:

SELECT SUBSTRING(SKU, charindex('-',SKU),  len(SKU) - charindex('-',SKU)) 
FROM tblname

我的例外输出是

desired o/p

2 个答案:

答案 0 :(得分:0)

试试这个......

    SELECT 
    SUBSTRING(SKU,0, CHARINDEX('-',SKU,(charindex('-',SKU)+1))+1) from tablename

希望这会有所帮助......

答案 1 :(得分:0)

SELECT  REVERSE(RIGHT(REVERSE('Hello-World-1'), 
                      LEN('Hello-World-1') - CHARINDEX('-',
                                                       REVERSE('Hello-World-1'))))

如果你想包括短划线......

SELECT  REVERSE(RIGHT(REVERSE('Hello-World-1'), 1 + 
                      LEN('Hello-World-1') - CHARINDEX('-',
                                                       REVERSE('Hello-World-1'))))