sql >> Database >  >> RDS >> Sqlserver

Hoe kolommen correct samen te voegen met T-SQL?

Wanneer u iets samenvoegt met een null, retourneert het null. Dus ik probeer een komma samen te voegen met de gegeven kolomwaarde en als die uitdrukking null retourneert, gebruik ik Coalesce om een ​​lege tekenreeks te retourneren. Als ik uiteindelijk een waarde krijg, begint het hele resultaat met een komma. Dus ik verwijder die komma met de Stuff-functie.

Select Stuff(
    Coalesce(',' + FirstName,'')
    + Coalesce(',' + LastName,'')
    + Coalesce(',' + StreetAddress,'')
    + Coalesce(',' + City,'')
    + Coalesce(',' + Country,'')
    + Coalesce(',' + PostalCode ,'')
    , 1, 1, '')
From Client

Als je alleen het adres wilt, dan zou je natuurlijk alleen die kolommen opnemen:

Select FirstName, LastName
    , Stuff(
        Coalesce(',' + StreetAddress,'')
        + Coalesce(',' + City,'')
        + Coalesce(',' + Country,'')
        + Coalesce(',' + PostalCode ,'')
    , 1, 1, '')
From Client


  1. PDO FetchObject in Object-attributen; OOP in PHP

  2. Selecteer huidige maanden records mysql uit de tijdstempelkolom

  3. Hoe stel ik de timer in om elke n minuten een functie aan te roepen?

  4. Echo alle veldnamen samen met hun respectieve waarden