Модераторы: skyboy
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Непонятки с хранимой функцией 
V
    Опции темы
CynicRus
Дата 20.1.2016, 16:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 248
Регистрация: 31.5.2012

Репутация: нет
Всего: 5



Добрый день, уважаемые форумчане. Пишу хранимую функцию, которая должна по выборке сложить поля типа float и вернуть сумму в виде float. 
Наваял такой код:
Код

  DECLARE totalbets FLOAT DEFAULT 0;
  DECLARE curbet FLOAT DEFAULT 0;
  DECLARE c CURSOR FOR SELECT `bets` from goldstat WHERE (`bets` > 0);
  OPEN c;
  betloop: LOOP
   FETCH c INTO curbet; 
      SET totalbets = totalbets + curbet;      
   END LOOP betloop;
  CLOSE c;
 RETURN totalbets;


По идее работать должно, запрос значения возвращает, всё ок. Но, когда начинаю проверять хранимку, при выполнении fetch я получаю: 1329 - No data - zero rows fetched, selected, or processed. 
Что я делаю не так?

Добавлено через 14 минут и 25 секунд
Насколько я понял - я делаю не так всё, подумал и решил проблему вот так:

Код

RETURN (SELECT SUM(`bets`) from goldstat WHERE (`bets` > 0));


Мда.-)
PM MAIL   Вверх
Akina
Дата 20.1.2016, 18:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 106
Всего: 454



Цитата(CynicRus @  20.1.2016,  17:44 Найти цитируемый пост)
Пишу хранимую функцию

Есть хранимые процедуры. Есть пользовательские функции. Так что пишем-то?

Цитата(CynicRus @  20.1.2016,  17:44 Найти цитируемый пост)
по выборке сложить поля типа float и вернуть сумму в виде float. 

И нахрена делать курсором то, что считается простейшим запросом?

Цитата(CynicRus @  20.1.2016,  17:44 Найти цитируемый пост)
при выполнении fetch я получаю: 1329 - No data - zero rows fetched, selected, or processed. 

Ясен пень - что бы ни было, но, перебирая данные курсором, до конца данных когда-нить, да доберёшься, а там и no data не за горами. А у тебя это событие ну никак не обрабатывается - отсель и сообщение. 


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MySQL | Следующая тема »


 




[ Время генерации скрипта: 0.0592 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.