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

SQL Server 2000:Ý tưởng để thực hiện truy vấn con tổng hợp nối

Hãy xem các bài viết này:

http://dataeducation.com/rowset-string-concatenation- phương-pháp-nào-là-tốt nhất /

http:// www.simple-talk.com/sql/t-sql-programming/concatenating-row-values-in-transact-sql/ (Xem giải pháp kết hợp chéo của Phil Factor trong các câu trả lời - sẽ hoạt động trong SQL Server 2000)

Rõ ràng là trong SQL Server 2005, thủ thuật FOR XML là dễ nhất, linh hoạt nhất và nói chung là hiệu quả nhất.

Đối với việc trả về một tập hợp hàng cho mỗi hàng, nếu bạn vẫn muốn làm điều đó vì lý do nào đó, bạn có thể thực hiện điều đó trong một thủ tục được lưu trữ, nhưng khách hàng sẽ cần sử dụng tất cả các hàng trong tập hợp hàng đầu tiên và sau đó chuyển sang phần tiếp theo tập hợp hàng và liên kết nó với hàng đầu tiên trong tập hợp hàng đầu tiên, v.v. SP của bạn sẽ cần mở một con trỏ trên cùng một tập hợp mà nó được trả về như tập hợp hàng đầu tiên và chạy nhiều lựa chọn theo trình tự để tạo ra tất cả các tập hợp hàng con. Đó là kỹ thuật tôi đã thực hiện, nhưng chỉ ở đâu TẤT CẢ dữ liệu thực sự cần thiết (ví dụ:trong chế độ xem dạng cây được điền đầy đủ thông tin).

Và bất kể người ta nói gì, làm điều đó ở phía máy khách thường gây lãng phí băng thông rất lớn, bởi vì trả về tất cả các hàng và thực hiện lặp và ngắt ở phía máy khách có nghĩa là một số lượng lớn các cột giống hệt nhau đang được chuyển khi bắt đầu mỗi hàng chỉ để lấy cột thay đổi ở cuối hàng.

Dù bạn làm điều đó ở đâu, đó phải là một quyết định sáng suốt dựa trên của bạn trường hợp sử dụng.



  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 thay đổi kích thước của một cột trong SQL Server (T-SQL)

  2. Sql server 2008 buộc ngày từ dd / MM / yyyy thành MM / dd / yyyy

  3. Cách hiển thị ngày ở định dạng ngày của Hoa Kỳ trong SQL Server (T-SQL)

  4. Tạo người dùng trong cơ sở dữ liệu Azure SQL bằng các hàm Azure?

  5. Lỗi máy chủ SQL:ExecuteNonQuery:Thuộc tính kết nối chưa được khởi tạo