Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Mysql:Não é permitido retornar um conjunto de resultados de uma função


Você deseja atribuir o resultado de uma consulta a uma variável, mas na verdade você está apenas select ing. É por isso que o MySQL está reclamando.

Você tem que mudar isso
            SELECT  p_KeyValue = ListName + '.' + Value
            FROM ListsTable
            WHERE EntryID = p_ParentID  LIMIT 1 ;

para
            SELECT CONCAT(ListName, '.', `Value`)
            INTO p_KeyValue
            FROM ListsTable
            WHERE EntryID = p_ParentID  LIMIT 1 ;

E você deve adicionar um ORDER BY . Um LIMIT sem ORDER BY não faz sentido, já que não há ordem garantida em um banco de dados relacional.