sql >> Database teknologi >  >> RDS >> Oracle

Forespørg i Oracle for at vælge med underforespørgsel

Du har bare brug for tydelig handling inden for en dag. Så brug HAVING tæller tydeligt af to individuelle handlinger GRUPPERET EFTER flyvning og dag :

SELECT flight
  FROM test
 WHERE action in ('Departure','Arrival')
 GROUP BY flight, trunc("date")
HAVING COUNT(distinct action)=2

hvor der skal være distinct klausul, er behovet iagttaget, hvis prøvedatasættet udvides

Demo

  • date er et reserveret nøgleord og kan ikke bruges som et kolonnenavn til Oracle-databasen. Så jeg foretrak "date"
  • Prefiks tidsliteralerne med timestamp søgeord og tilføj portion :00 i slutningen for at repræsentere second såsom timestamp'2020-02-21 04:30:00' under indsættelsen


  1. Sådan finder du rækker, der har en værdi, der indeholder et lille bogstav

  2. Postgresql sortering af blandede alfanumeriske data

  3. Genererer sql-indsæt til Oracle

  4. Sådan opretter du flere en til ens