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

Chèn số hàng trống trong SQL

Chỉ cần xác định truy vấn thứ hai tạo các hàng trống mà bạn cần và kết hợp chúng với nhau.

SELECT ROW_NUMBER() OVER(PARTITION BY family_id ORDER BY family_id) AS rowNum,
    full_name as name,
    family_id
FROM tbl_person

UNION ALL

SELECT n.N AS rowNum,
    NULL AS name,
    p.family_id
FROM (SELECT family_id, COUNT(*) family_count FROM tbl_person group by family_id) p
INNER JOIN (
    SELECT 1 AS N
    UNION ALL SELECT 2
    UNION ALL SELECT 3
    UNION ALL SELECT 4
    ) n
    ON n.n > p.family_count
ORDER BY family_id,
    rowNum,
    name;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. T-SQL:kiểm tra định dạng email

  2. Khóa duy nhất so với chỉ mục duy nhất trên SQL Server 2008

  3. Làm cách nào để tìm các bản sao trên nhiều cột?

  4. Trả lại hạt giống ban đầu của cột danh tính trong SQL Server

  5. Giao dịch phải được xử lý trước khi kết nối có thể được sử dụng để thực hiện các câu lệnh sql