[mysql] concat таблицы

ghytr00013

Есть таблица, в которой одно из полей типа varchar(255). Я хочу все строки объединить в один текст. Делаю так:
set @str:='';
select @str:=concat(@str,' ',`text`) from table order by `order` desc;

При этом @str получает почему-то значение последней строки, а не всего текста. То есть, результат работы такой, как будто переменная 1 раз была вставлена в функцию. Если я теперь снова запущу
 select @str:=concat(@str,' ',`text`) from table order by `order` desc; 
, то все получается по-другому, то есть, в переменной оказывается нужный мне текст. Правда, в нем первое слово - то, что осталось от прошлого вызова select-a. Подозреваю, что дело в типе переменной @str. А может нет. Не подскажете, ге грабли?

ghytr00013

Всё еще актуально.

ghytr00013

Еще вопрос. Пишу процедуру в мускле, которая использует несколько больших селектов внутри себя. Как бы такое придумать чтобы результаты всех этих селектов на экран не выводились если из под клиента запускать её?
Оставить комментарий
Имя или ник:
Комментарий: