sql >> Base de Datos >  >> RDS >> Oracle

Consulta de selección de Oracle con error de consulta de selección interna

El problema es colocar ORDER BY en el WHERE subconsulta de cláusula. La sintaxis SQL no le permite ordenar elementos de la subconsulta en WHERE cláusula, porque no cambia el resultado de la consulta en general.

Debería moverlo para arreglar la sintaxis:

SELECT empid  FROM employees WHERE deptid IN
    (
        SELECT deptid FROM department WHERE description LIKE '%application%'
    )
ORDER BY createddate DESC

Entonces necesitas unirte al department tabla y use ORDER BY en una de sus columnas:

SELECT e.empid
FROM employees e
JOIN department d ON e.deptid = d.deptid
WHERE d.description LIKE '%application%'
ORDER BY d.createddate DESC