sql >> Databasteknik >  >> RDS >> Sqlserver

Hur byter man ut första och sista tecknet i kolumnen i SQL-servern?

Du kan använda SUBSTRING för det:

SELECT
    SUBSTRING(col, 2, LEN(col)-2)
FROM ...

Uppenbarligen skulle ett ännu bättre tillvägagångssätt vara att inte sätta inledande och efterföljande kommatecken där i första hand, om detta är ett alternativ.

Uttrycket blir lite mer komplext, men idén förblir densamma:

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 ...


  1. Distribuera Entity Framework Code First Database

  2. Hur man grupperar efter 1 i SQL Server

  3. Jämför rader i tabell för skillnader mellan fält

  4. Hur lagrar man en pdf-fil i postgresql-databasen med hjälp av servlets?