Ho una tabella "note" composta dai campi id, riga e testo contenente delle note relative ai record di un altra tabella, il mio problema è concatenare tutti i campi "testo" dei record aventi lo stesso id senza utilizzare php o qualche altro linguaggio di programmazione per cui ho pensato di provare con le stored functions, ma purtroppo la documentazione sull'argomento che ho trovato in giro è troppo generica o troppo confusa e non mi aiuta, qui sotto riporto un esempio sbagliato di quello che voglio fare e spero che renda l'idea:
codice:
DELIMITER //;
create function note_beni (in codben BIGINT(20))
 returns TEXT
 begin
  declare nota TEXT;
  declare rig INT default 1;
  declare tot INT;
  set nota = '';
  set tot = select count(*) from note where id=codben;
  while rig < tot
   do
    set nota = nota+select trim(ifnull(testo, '')) from BENI_NOTE where id=codben and riga=rig;
    set rig = rig + 1;
  end while;
  return nota;
 end//
DELIMITER;
Quale è il modo corretto di scrivere questa stored function ?