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

Chuyển đổi truy vấn SQL sang sử dụng toán tử bộ

Đó không phải là cách bạn thường làm, nhưng như một bài tập, bạn có thể lấy tập hợp tất cả các ID khách hàng và TRỪ tập hợp tất cả các ID có nhiều hơn hai giao dịch, bạn có thể nhận được mà không cần nhìn vào bảng khách hàng một giây thời gian:

SELECT C.ID
FROM CUSTOMER C
MINUS
SELECT P.ID
FROM PERFORMS P
INNER JOIN TRANSACTION T
ON T.CODE = P.CODE
GROUP BY P.ID
HAVING COUNT(T.CODE) > 1;

Bạn không thực sự cần tham gia GIAO DỊCH, bạn chỉ có thể đếm trực tiếp các giá trị mã trong PERFORMS:

SELECT C.ID
FROM CUSTOMER C
MINUS
SELECT P.ID
FROM PERFORMS P
GROUP BY P.ID
HAVING COUNT(P.CODE) > 1;

... nhưng có thể còn nhiều điều hơn cho câu hỏi về những gì bạn đã hiển thị, chẳng hạn như giới hạn theo loại hoặc ngày.




  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 gọi hàm được lưu trữ của tham số IN và OUT trong Cơ sở dữ liệu Oracle bằng Java

  2. Sao chép ORACLE_HOME

  3. ORA 03134 lỗi kết nối ODP.NET 12 (VS2012) với cơ sở dữ liệu Oracle 11

  4. SQL để tạo danh sách các số từ 1 đến 100

  5. Cập nhật sâu Oracle SQL