how can I reschedule a job if it fails

i have a sql script ex a.sql
i want to schudle it at 1 am every day
if it fails then it wiil run after 2 haours
can some one help me write a shell script for this problem???????????

In your crontab file:

0 13 * * * runsql
## NAME: runsql
until a.sql
do
 sleep 120
done