Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Como substituir o primeiro e o último caractere da coluna no sql server?


Você pode usar SUBSTRING por isso:
SELECT
    SUBSTRING(col, 2, LEN(col)-2)
FROM ...

Obviamente, uma abordagem ainda melhor seria não colocar vírgulas à esquerda e à direita em primeiro lugar, se isso for uma opção.

A expressão fica um pouco mais complexa, mas a ideia continua a mesma:
SELECT SUBSTRING(
    col
,  CASE LEFT(@col,1) WHEN ',' THEN 2 ELSE 1 END
,  LEN(@col) -- Start with the full length
             -- Subtract 1 for comma on the left
      - CASE LEFT(@col,1) WHEN ',' THEN 1 ELSE 0 END 
             -- Subtract 1 for comma on the right
      - CASE RIGHT(@col,1) WHEN ',' THEN 1 ELSE 0 END
)
FROM ...