sql >> Databasteknik >  >> RDS >> Mysql

Mysql :Inte tillåtet att returnera en resultatuppsättning från en funktion

Du vill tilldela resultatet av en fråga till en variabel, men i själva verket är du bara select ing. Det är därför MySQL klagar.

Du måste ändra detta

            SELECT  p_KeyValue = ListName + '.' + Value
            FROM ListsTable
            WHERE EntryID = p_ParentID  LIMIT 1 ;

till

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

Och du bör lägga till en ORDER BY . En LIMIT utan ORDER BY är inte vettigt, eftersom det inte finns någon garanterad ordning i en relationsdatabas.



  1. Är det möjligt att uppgradera MySQL i MAMP till MySQL 5.7?

  2. Vad är grejen med unicode-tecknet 首(U+9996) och hur hanterar java/mysql det och dess vänner?

  3. Hur gör jag databastransaktioner med psycopg2/python db api?

  4. Dela upp värden över flera rader