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

Chọn bản ghi cha với tất cả trẻ em trong SQL

Dựa vào một thủ thuật số (trong đó số lượng liên kết cha-con =số con, cha mẹ đó được liên kết với tất cả con):

SELECT Parent.ParentID, COUNT(*)
FROM Parent
INNER JOIN ChildParent
    ON ChildParent.ParentID = Parent.ParentID
INNER JOIN Child
    ON ChildParent.ChildID = Child.ChildID
WHERE <ChildFilterCriteria>
GROUP BY Parent.ParentID
HAVING COUNT(*) = (
    SELECT COUNT(Child.ChildID)
    FROM Child WHERE <ChildFilterCriteria>
)


  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 thế nào để tăng hiệu suất của Cơ sở dữ liệu?

  2. Cách viết một truy vấn SQL để trình bày các giá trị theo chiều ngang

  3. Trích xuất dữ liệu từ MS SQL Server-2008 tham chiếu nhiều bảng

  4. COUNT (DISTINCT column_name) Sự khác biệt so với COUNT (column_name) trong SQL Server 2008?

  5. Hỗ trợ SQL 2008 HierarchyID trong NHibernate