Oracle
 sql >> Base de données >  >> RDS >> Oracle

Identifier si au moins une ligne avec une condition donnée existe

Généralement, vous exprimez cela soit

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

où le rownum = 1 prédicat permet à Oracle d'arrêter de chercher dès qu'il trouve la première ligne correspondante ou

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

où le EXISTS permet à Oracle d'arrêter de chercher dès qu'il trouve la première ligne correspondante.

La première approche est un peu plus compacte mais, à mes yeux, la deuxième approche est un peu plus claire puisque vous cherchez vraiment à déterminer si une ligne particulière existe plutôt que d'essayer de compter quelque chose. Mais la première approche est également assez facile à comprendre.