powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / MySQL и написание функций - по простому примеру
18 сообщений из 18, страница 1 из 1
MySQL и написание функций - по простому примеру
    #38810390
andrei90g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!
Прошу помочь мне с написанием Mysql функции. С гуглом я научился примитивно сделать функцию вида:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
CREATE FUNCTION my_add (
    a DOUBLE,
    b DOUBLE
)
RETURNS DOUBLE
BEGIN

    IF a IS NULL THEN
        SET a = 0;
    END IF;

    IF b IS NULL THEN
        SET b = 0;
    END IF;

    RETURN (a + b);
END$$



результат суммирование двух значений seiq.ru/screen_andrei90g/...
при
Код: sql
1.
SELECT o,h,my_add(o,h) FROM `table` WHERE 1



А вот как написать функцию, чтобы брала значение 1 столбца и высчитывала их всех (или сгруппированные)... Допустим как работает встроенная функция SUM(h) – перебирает все строки – и суммирует...
Я правда по другому немного считать буду, но прошу показать пример, кто знает как написать... Гугл перелопатил. Всё в сложных примерах, поэтому кто знает и может помочь – прошу написать функцию SUM – а дальше пойму как уже эта концепция работает – по перебору всех строк (или сгруппированных в запросе) и выдаче результата
Заранее благодарю..
​Очень надеюсь на Вашу помощь....

PS - просто можно долго разбираться в мануалах, но на примере - быстрее и понятнее... "Старички" - не хайте, умоляю) Я не начинающий. 4 года стажа, просто с функциями щас столкнулся и лажа
...
Рейтинг: 0 / 0
MySQL и написание функций - по простому примеру
    #38810403
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Надо не Гугл мучать, а документацию читать. Вот тут .
Групповые (aggregate) функции создаются только как UDF.
...
Рейтинг: 0 / 0
MySQL и написание функций - по простому примеру
    #38810523
andrei90g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
читал)
но мне бы реальный пример)
...
Рейтинг: 0 / 0
MySQL и написание функций - по простому примеру
    #38810606
Фотография tchingiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrei90g Допустим как работает встроенная функция SUM(h) – перебирает все строки – и суммирует...–

прошу написать функцию SUM –

открыть курсор и извлекая по одному значению из записи суммировать.
Вроде как сумма элементов массива.
...
Рейтинг: 0 / 0
MySQL и написание функций - по простому примеру
    #38810635
andrei90g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
tchingizandrei90g Допустим как работает встроенная функция SUM(h) – перебирает все строки – и суммирует...–

прошу написать функцию SUM –

открыть курсор и извлекая по одному значению из записи суммировать.
Вроде как сумма элементов массива.

я смотрел и в строну курсора.. Но не смог.. Очень прошу показать на примере...
...
Рейтинг: 0 / 0
MySQL и написание функций - по простому примеру
    #38810681
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrei90gмне бы реальный пример
Если недостаточно того, что описывается в разделе 24.3.2, то никакие примеры тебе не помогут.
...
Рейтинг: 0 / 0
MySQL и написание функций - по простому примеру
    #38810742
andrei90g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
и всё же надеюсь на чью ту помощь с примером...
...
Рейтинг: 0 / 0
MySQL и написание функций - по простому примеру
    #38811213
Фотография tchingiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrei90gtchingizпропущено...


открыть курсор и извлекая по одному значению из записи суммировать.
Вроде как сумма элементов массива.

я смотрел и в строну курсора.. Но не смог.. Очень прошу показать на примере...
а сумму элементов целого массива ты можешь найти?

Модератор: Тема перенесена из форума "Вопрос-Ответ".
...
Рейтинг: 0 / 0
MySQL и написание функций - по простому примеру
    #38811292
andrei90g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
tchingizandrei90gпропущено...


я смотрел и в строну курсора.. Но не смог.. Очень прошу показать на примере...
а сумму элементов целого массива ты можешь найти?

Модератор: Тема перенесена из форума "Вопрос-Ответ".
смотря на каком языке программирования.... НУ что так тяжело помочь кому то с примером, чтобы не строить догадки?!
Умоляю) Помогите примером. Я просто всегда из реальных примеров сразу соображаю что надо... Мне надо RSI вообще более сложную функцию написать... Но прошу пример SUM - т.к. поняв это на примере - дальше проще мне.
...
Рейтинг: 0 / 0
MySQL и написание функций - по простому примеру
    #38811507
andrei90g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
помогите кто - то .... Прошу!
...
Рейтинг: 0 / 0
MySQL и написание функций - по простому примеру
    #38811537
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrei90gпомогите кто - то .... Прошу!Я, например, толком не понял, с чем именно нужно помочь?

Могу, например, предложить такой вариант:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
CREATE FUNCTION sumdemo() RETURNS INT
BEGIN
  DECLARE done INT DEFAULT FALSE;
  DECLARE a,s INT;
  DECLARE cur1 CURSOR FOR SELECT data FROM test.t1;
  DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;

  OPEN cur1;
  SET s=0;

  read_loop: LOOP
    FETCH cur1 INTO a;
    IF done THEN
      LEAVE read_loop;
    END IF;
    SET s=s+a;
  END LOOP;

  CLOSE cur1;
  RETURN s;
END;

(как идея, синтаксис не проверял)

Но я сомневаюсь, что это то, что вам нужно.
...
Рейтинг: 0 / 0
MySQL и написание функций - по простому примеру
    #38811544
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoft , по-моему, ему нужна функция, которую он может использовать по типу
Код: sql
1.
2.
3.
select fld1, MyFunction(fld2)
from test
group by fld1


И пока он не въехал, что такие функции пишут на Си или около того, и потом с треском заталкивают в сервер...
...
Рейтинг: 0 / 0
MySQL и написание функций - по простому примеру
    #38812548
andrei90g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina miksoft , по-моему, ему нужна функция, которую он может использовать по типу
Код: sql
1.
2.
3.
select fld1, MyFunction(fld2)
from test
group by fld1


И пока он не въехал, что такие функции пишут на Си или около того, и потом с треском заталкивают в сервер...

Именно! Такое мне нужно! Очень сильно прошу показать пример именно sum(X) к примеру.
...
Рейтинг: 0 / 0
MySQL и написание функций - по простому примеру
    #38812549
andrei90g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoftandrei90gпомогите кто - то .... Прошу!Я, например, толком не понял, с чем именно нужно помочь?

Могу, например, предложить такой вариант:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
CREATE FUNCTION sumdemo() RETURNS INT
BEGIN
  DECLARE done INT DEFAULT FALSE;
  DECLARE a,s INT;
  DECLARE cur1 CURSOR FOR SELECT data FROM test.t1;
  DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;

  OPEN cur1;
  SET s=0;

  read_loop: LOOP
    FETCH cur1 INTO a;
    IF done THEN
      LEAVE read_loop;
    END IF;
    SET s=s+a;
  END LOOP;

  CLOSE cur1;
  RETURN s;
END;

(как идея, синтаксис не проверял)

Но я сомневаюсь, что это то, что вам нужно.

Ну мне нужно функцию типа SUM(X) - где X - это значения определённого столбца. Ну как работает обычная стандартная SUM(X) в mysql...
...
Рейтинг: 0 / 0
MySQL и написание функций - по простому примеру
    #38812565
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrei90gОчень сильно прошу показать пример именно sum(X) к примеру.В поиске уже были?
Первая же ссылка .
Эта же страница в современной документации - UDF Calling Sequences for Aggregate Functions (и далее по ссылкам).
...
Рейтинг: 0 / 0
MySQL и написание функций - по простому примеру
    #38812696
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoft , ссылку на документацю я уже давал... но ёж - птица гордая, и без примера не полетит.
...
Рейтинг: 0 / 0
MySQL и написание функций - по простому примеру
    #38813708
andrei90g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina miksoft , ссылку на документацю я уже давал... но ёж - птица гордая, и без примера не полетит.

ну блин вы жадные) пример тяжело на sum(x) показать?(
...
Рейтинг: 0 / 0
MySQL и написание функций - по простому примеру
    #38813726
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrei90gну блин вы жадные) пример тяжело на sum(x) показать?(Мы не жадные, просто мы таким не занимаемся. Самописные внешние функции - это экзотика в той сфере, где обычно применяется MySQL.
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / MySQL и написание функций - по простому примеру
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]