Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Làm thế nào để nối các cột đúng cách bằng T-SQL?

Khi bạn nối bất kỳ thứ gì với giá trị null, nó sẽ trả về giá trị null. Vì vậy, tôi đang cố gắng nối dấu phẩy với giá trị cột đã cho và nếu biểu thức đó trả về giá trị rỗng, tôi sử dụng Coalesce để trả về một chuỗi trống. Cuối cùng, nếu tôi nhận được một giá trị, toàn bộ kết quả sẽ bắt đầu bằng dấu phẩy. Vì vậy, tôi xóa dấu phẩy đó bằng cách sử dụng hàm Stuff.

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

Nếu bạn chỉ muốn địa chỉ, thì rõ ràng bạn sẽ chỉ bao gồm các cột đó:

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. Cách xác định khoảng cách đầu tiên trong nhiều phạm vi ngày bắt đầu và ngày kết thúc cho từng thành viên riêng biệt trong T-SQL

  2. Cách sử dụng kết quả của câu lệnh SQL select trong hàm dbo.fnSplit làm đầu vào

  3. Tạo bảng từ truy vấn SQL

  4. Không thể thu nhỏ cơ sở dữ liệu ‘chỉ đọc’ | Thu hẹp nhật ký giao dịch khi sử dụng nhóm AlwaysOn Av sẵn sàng

  5. Cách xử lý nhiều đối tượng bằng cách sử dụng Object Explorer Chi tiết Windows trong SSMS - Hướng dẫn sử dụng SQL Server / TSQL Phần 22