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:
Quale è il modo corretto di scrivere questa stored function ?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;

Rispondi quotando