sql >> Databáze >  >> RDS >> Oracle

Použití více vnořených dotazů v Oracle DBMS

Váš dotaz:

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

Problémy:

  1. Zdá se, že se pokoušíte vybrat ID pomocí operátoru "=", což selže v případě více položek vrácených vnitřním dotazem.
  2. Do klauzule where nelze přidat agregační operátory.

Pravděpodobná odpověď:

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. Při použití Entity Framework s MySQL jsou znaky Unicode nahrazeny základními znaky

  2. mysql dotaz pro zachycení více rozsahů dat

  3. získat sledující twitter jako pomocí MySQL

  4. Insert into with union all a nextval nefunguje s duplicitními hodnotami