Stored Procedure

UPDATE adminuser SET userActivationSent = NULL, userOldActiveEmail = ‘’, userStatus = 1 WHERE TIMESTAMPDIFF(HOUR,userActivationSent,TIMESTAMP(NOW())) >= 24

This is my static SQL which runs every 24 hours , is this good to have this as a SQL or will stored procedure yield some efficiency for me. And one question bothering me a long time ,is there any situation that when to use stored procedure and when shouldn’t ?
Thanks
Ramesh