ho provato anche così, ma result mi ritorna sempre undefined.
Però se faccio il debug da browser, nella sezione RETE, in Risposta vedo il valore di ritorno corretto:
codice:
function elabora()
    {
        jQuery.ajax({
            url: "script_che_accede_al_database.php", 
            success: function(result) {
                if(result == 0)
                {
                    // esegui codice
                }
                else
                {
                    // esegui codice
                }


          return result;
          }
        }); 
    }

var i = 1;
       let conteggio = '';
       while(i > 0)
       {
           conteggio = elabora();
           alert(conteggio);
           i = conteggio;
       }