sql >> Database >  >> RDS >> Sqlserver

SQL:verwijder laatste komma in string

REVERSE gebruiken en STUFF :

SELECT
    REVERSE(
        STUFF(
            REVERSE(LTRIM(RTRIM(INETSHORTD))), 
            1, 
            CASE WHEN SUBSTRING((REVERSE(LTRIM(RTRIM(INETSHORTD)))), 1, 1) = ',' THEN 1 ELSE 0 END, 
            ''
        )
    )
FROM tbl

Eerst wil je TRIM uw gegevens om voorloop- en volgspaties te verwijderen. Dan REVERSE en controleer of het eerste teken , . Als dit het geval is, verwijdert u het, anders doet u niets. Dan REVERSE het weer terug. U kunt het eerste teken verwijderen met STUFF(string, 1, 1, '') .

SQL Fiddle



  1. hoe rare varchar-tijd naar realtime in mysql te converteren?

  2. Ontdek de geschiedenis van SQL-query's

  3. mysqldump problemen met herstelfout:'GEGEVENS DE tabelruimte weg voordat u IMPORTEERT'

  4. mysql-query om alles behalve iets te selecteren