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

Làm cách nào để tìm các cột riêng biệt trong một truy vấn con lồng nhau trong SQL?

Bạn có thể sử dụng nhóm đồ uống riêng biệt của DRINKER để đếm số lượng

SELECT DRINKERS.DRINKER
FROM DRINKERS
INNER JOIN ORDERS DRINKERS.DRINKER = ORDERS.DRINKER
WHERE ORDERS.DRINK IN ( 'VODKA' , 'WHISKY')
GROUP BY DRINKER
HAVING COUNT(DISTINCT ORDERS.DRINK ) = 2 

hoặc nếu bạn cần một

lồng nhau
    SELECT DISTINCT DRINKER
    FROM DRINKERS
    WHERE EXISTS (SELECT DRINKER 
                  FROM ORDERS
                  WHERE DRINK IN ( 'VODKA' AND 'WHISKY')
                  GROUP BY DRINKER
                  HAVING COUNT(DISTINCT ORDERS.DRINK ) = 2 
                  );


  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ỗi Hibernate khi thực thi DDL qua Tuyên bố JDBC

  2. MySQL 2 bản ghi hàng đầu cho mỗi nhóm

  3. MySQL trả về bản ghi đầu tiên và cuối cùng cho các kết quả giống hệt nhau liên tiếp

  4. Không bắt được kết nối:php_network_getaddresses:getaddrinfo không thành công:Không xác định được tên hoặc dịch vụ

  5. Nhập CSV để cập nhật chỉ một cột trong bảng