SQL функция releve_cumul (неизвестно, неизвестно) не существует - PullRequest
1 голос
/ 22 апреля 2020

Я, кажется, получаю ОШИБКУ:

ERROR:  function releve_cumul(unknown, unknown) does not exist
LINE 1: select * from releve_cumul('51780','117510');

Вот код функции.

create or replace function releve_cumul (matricule char(10), prog char(7)) returns table
(trimc char(5), cred_total numeric, moy_cumul numeric) as $$
 with r1 as (SELECT * FROM notes WHERE matricule=releve_cumul.matricule AND prog=releve_cumul.prog),
      r11 as (SELECT * FROM r1 NATURAL JOIN titres),
    r2 as(SELECT * FROM r11 NATURAL JOIN credits),
    r3 as(SELECT *  FROM r2 NATURAL JOIN valnotes),
    r4 as(SELECT * FROM r3 WHERE note!='ABA' AND note!='SE' AND note!='REM' AND note!='(S)'),
    r5 as(SELECT trimc, SUM(credits) as credits,ROUND(SUM(credits*valeur)/SUM(credits),3) as valeur
    FROM r4 GROUP BY trimc ORDER BY trimc),
    r6 as(select trimc, credits, SUM(credits) OVER (ORDER BY trimc)  as cred_total, valeur FROM r5),
    r7 as(SELECT trimc, cred_total, ROUND(SUM(credits*valeur)/SUM(credits) OVER (Order By trimc),3)
    as moy_cumul FROM r6 GROUP BY trimc, credits)
    SELECT trimc, cred_total, moy_cumul from r7
$$ language 'sql';

select * from releve('51780','117510');
select * from releve2('51780','117510');
select * from releve_cumul('51780','117510');

Как вы можете видеть прямо перед тем, как я вызываю releve_cumul, я вызываю 2 другие функции, они имеют одинаковую подпись (буквальное копирование и вставка, поэтому я их не включил), я действительно не понимаю, почему эта последняя не работает вообще. ПРИМЕЧАНИЕ. Если это важная информация, я довольно плохо знаком с этим языком, и это часть домашней работы.

...