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

Chọn nhiều hàng SQL thành một hàng

Phương pháp đầu tiên dựa vào biến, vì vậy câu trả lời là không cho cái đầu tiên.

Nhưng bạn có thể dễ dàng sử dụng cách tiếp cận thứ hai mà không cần biến, chỉ cần bạn sửa đổi nó một chút:

SELECT 
  SUBSTRING(
    (SELECT ';' + strContract FROM tblContractMail FOR XML PATH('')),
    2,
    2147483647
  )

Như bạn có thể thấy, dấu phân tách đi trước mặt hàng. Do đó, bạn bắt đầu cắt chuỗi từ ký tự thứ hai, bỏ qua dấu chấm phẩy ở đầu. Bộ chỉ định độ dài không nhất thiết phải chính xác bằng độ dài trừ đi một, bạn có thể chỉ định bất kỳ số khá lớn nào và hàm sẽ trả về mọi thứ từ ký tự thứ hai đến hết. Trong trường hợp này, int tối đa giá trị đã được chỉ định.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để xuất tất cả dữ liệu từ bảng sang định dạng sql có thể chèn?

  2. Cách tìm bảng chứa một cột cụ thể trong SQL Server

  3. Lọc truy vấn SQL theo danh sách các tham số

  4. Nhận thời gian của datetime bằng T-SQL?

  5. Câu lệnh SQL UPDATE để chuyển hai giá trị thành hai hàng