L'errore non è nella tua procedura. L'errore è nella tua query:restituisce più di una riga, ma non puoi impostare più risultati nel valore scalare 'emp1'.
Dovresti limitare la tua query in modo che restituisca una riga.
Come recuperare più righe dalla stored procedure in mysql?
- Piano A :Riempi un'altra tabella, potrebbe essere una tabella temporanea.
- Piano B :Basta eseguire la tua istruzione SELECT senza la clausola INTO dalla procedura; quindi potresti leggere il set di dati dall'applicazione (c#, PHP+mysqli,...)
- Piano C :Non utilizzare la procedura, esegui solo la query SELECT.