J'ai un tableau 1 avec des lignes comme les suivantes:Créer Fonction Oracle pour effectuer Nombre total dans les lignes
ID1 ID2 Attempts
01 01 3
02 01 2
03 01 0
04 01 4
05 02 1
06 02 2
Je dois créer une fonction dans l'oracle qui est passé un ID2 spécifique, et retourner un vrai ou faux selon que le nombre de tentatives à travers les valeurs de ID2 identiques est inférieure à (faux) ou supérieur ou égal (vrai) certains Valeur correspondant à description de: Max Val Tableau 1 en table2:
ID Description Value
01 Blah 23
02 BlahBlah 12
03 Table1 Max Val 20
J'ai essayé:
CREATE OR REPLACE FUNCTION greater(Val IN NUMBER) RETURN NUMBER AS
MAXVAL1 CLOB;
MAXVAL2 NUMBER;
BEGIN
select Value into MAXVAL1 from Table2 Where Description = 'Table1 Max Val';
select SUM(Attempts) into MAXVAL2 from Table1 where ID2 = Val;
4: IF MAXVAL2 < CAST(CAST(MAXVAL AS VARCHAR2(200)) AS NUMBER(10))
5: RETURN 0;
6: ELSE
7: RETURN 1;
8: END IF;
9: END;
cependant, il ne compilera pas (ne pas comme ça coulée).
Où est le type de données de retour de votre fonction? –
également ajouter l'erreur que vous obtenez –
J'ai ajouté le type de retour de la fonction (voir l'article original) –