Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak poprawnie łączyć kolumny za pomocą T-SQL?

Kiedy łączysz coś z wartością null, zwraca ona wartość null. Próbuję więc połączyć przecinek z podaną wartością kolumny i jeśli to wyrażenie zwróci wartość null, używam Coalesce, aby zwrócić pusty ciąg. Na końcu, jeśli otrzymam wartość, cały wynik zacznie się od przecinka. Usuwam więc ten przecinek za pomocą funkcji Rzeczy.

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

Jeśli chcesz tylko adres, to oczywiście uwzględnisz tylko te kolumny:

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Obcięcie SQL Server i ograniczenie 8192

  2. sql:USUŃ + WSTAW vs AKTUALIZUJ + WSTAW

  3. Nieprawidłowa suma, gdy dołączam do drugiego stołu

  4. Jak wyszukiwać i analizować sąsiednią hierarchię list za pomocą cte?

  5. SQL Server- Jak zapisywać zmienne i wyniki zapytań do pliku tekstowego?