Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Consulta no Oracle para selecionar com subconsulta


Você só precisa de ação distinta dentro de um dia. Portanto, use HAVING count distintamente de duas ações individuais GROUPed BY flight e day :
SELECT flight
  FROM test
 WHERE action in ('Departure','Arrival')
 GROUP BY flight, trunc("date")
HAVING COUNT(distinct action)=2

onde deve haver distinct cláusula, a necessidade é observada se o conjunto de dados de amostra for estendido

Demonstração
  • date é uma palavra-chave reservada e não pode ser usada como um nome de coluna para o banco de dados Oracle. Então, eu preferi "date"
  • Prefixe os literais de tempo com timestamp palavra-chave e adicione a parte :00 no final para representar second como timestamp'2020-02-21 04:30:00' durante a inserção