Oracle: comment s'assurer qu'une fonction dans la clause where ne sera appelée qu'après que toutes les clauses where restantes ont filtré le résultat?

Je suis en train d'écrire une requête à cet effet:

select * 
from players 
where player_name like '%K% 
  and player_rank<10 
  and check_if_player_is_eligible(player_name) > 1;

Maintenant, la fonction check_if_player_is_eligible() est lourd et, par conséquent, je veux que la requête pour filtrer les résultats de recherche suffisamment et ensuite seulement d'exécuter cette fonction sur les résultats filtrés.

Comment puis-je m'assurer que le filtrage se fait avant que la fonction est exécutée, de sorte qu'il s'exécute le nombre minimum de fois ?

source d'informationauteur Daud