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

Hợp nhất dữ liệu trong một bảng SQL đơn lẻ mà không cần con trỏ

Quan sát chính là một dãy số trừ một dãy số khác là một hằng số. Chúng tôi có thể tạo một chuỗi khác bằng cách sử dụng row_number . Điều này xác định tất cả các nhóm:

select id, MIN(number) as low, MAX(number) as high
from (select t.*,
             (number - ROW_NUMBER() over (partition by id order by number) ) as groupnum
      from t
     ) t
group by id, groupnum

Phần còn lại chỉ là tổng hợp.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Phiên bản phụ trợ không được hỗ trợ để thiết kế sơ đồ hoặc bảng cơ sở dữ liệu

  2. Cập nhật cùng một dữ liệu từ cùng một bảng

  3. Đã vượt quá kích thước hàng tối đa khi sao chép trường varbinary (max)

  4. Cách tìm đối chiếu trong SQL Server (T-SQL)

  5. Hạn chế quyền truy cập của người dùng vào bảng bằng Sql Server 2008