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

Identifique si existe al menos una fila con la condición dada

Comúnmente, expresarías esto como

SELECT COUNT(*)
  FROM employee
 WHERE name like 'kaushik%'
   AND rownum = 1

donde rownum = 1 predicado permite que Oracle deje de buscar tan pronto como encuentre la primera fila coincidente o

SELECT 1
  FROM dual
 WHERE EXISTS( SELECT 1
                 FROM employee
                WHERE name like 'kaushik%' )

donde EXISTS La cláusula permite que Oracle deje de buscar tan pronto como encuentre la primera fila coincidente.

El primer enfoque es un poco más compacto pero, desde mi punto de vista, el segundo enfoque es un poco más claro ya que realmente está buscando determinar si existe una fila en particular en lugar de tratar de contar algo. Pero el primer enfoque también es bastante fácil de entender.