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

Sử dụng nhiều truy vấn lồng nhau trong Oracle DBMS

Truy vấn của bạn:

SELECT Email, Phonenumber
FROM EMPLOYEE
WHERE COUNT(
ID = (SELECT ID_Num
FROM SCHEDULE
WHERE Start_Time <= 12:07 AND End_Time >= 12:07)
AND Shopn = (SELECT Shopname
FROM SHOP
WHERE Shoptype = ‘market’) ) > 2

Vấn đề:

  1. Có vẻ như bạn đang cố gắng chọn id bằng toán tử "=", điều này sẽ không thành công trong trường hợp có nhiều mục nhập được trả về bởi truy vấn bên trong.
  2. Bạn không thể thêm toán tử tổng hợp trong mệnh đề where.

Câu trả lời có thể xảy ra:

select Email, Phonenumber
FROM EMPLOYEE
WHERE ID in (SELECT ID_Num
FROM SCHEDULE
WHERE Start_Time <= '12:07' AND End_Time >= '12:07')
AND Shopn in (SELECT Shopname
FROM SHOP
WHERE Shoptype = 'market')
and (  
select count(distinct id)
FROM EMPLOYEE
WHERE ID in (SELECT ID_Num
FROM SCHEDULE
WHERE Start_Time <= '12:07' AND End_Time >= '12:07')
AND Shopn in (SELECT Shopname
FROM SHOP
WHERE Shoptype = 'market')) > 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. Sự khác biệt giữa độ chính xác và tỷ lệ là gì?

  2. Không thể tìm nạp các bản ghi vào TO DATE Oracle

  3. Làm thế nào để viết truy vấn chèn oracle được tham số hóa?

  4. Hàm Group_concat MySQL tương đương trong Oracle

  5. làm thế nào để sửa đổi một ràng buộc kiểm tra hiện có?