ERREUR Ó la ligne 1 :
ORA-00937: la fonction de groupe ne porte pas sur un groupe simple
ORA-06512: Ó ligne 9
j'explique ce que je suis en train de faire je fais un programme qui augmente la remise d'un client si les ventes sont superrieures a la moyenne des ventes si ce n'est pas le cas j'inscrit le client dans la base trace et mais un commentaire.
voici mon code:
--creation de la table trace
CREATE TABLE trace
(
num NUMBER(4),
commentaire CHAR(4)
);
CREATE TABLE clients
(
Num_client NUMBER (4),
Nom CHAR(30),
Ventes NUMBER(10,2),
Remise NUMBER(4,2),
Departement CHAR(3)
);
INSERT INTO clients VALUES (1, 'SIGWALD', 10.02, 30, 'LIN');
INSERT INTO clients VALUES (2, 'RAVIER', 30.02, 30, 'LIN');
INSERT INTO clients VALUES (3, 'ROUSSET', 40.67, 15, 'LIN');
INSERT INTO clients VALUES (4, 'MOUROT', 09.40, 30, 'LIN');
DESC clients;
DESC trace;
SELECT * FROM clients;
SELECT * FROM trace;
SET SERVEROUTPUT ON
DECLARE
Moy NUMBER(4,2) ;
Ve clients.Ventes%TYPE;
Re clients.Remise%TYPE;
Nu clients.Num_client%TYPE;
--TN NUMBER(4);
BEGIN
SELECT AVG(Ventes),Ventes,Num_client INTO Moy,Ve,Nu FROM clients;
IF Ve>Moy
THEN UPDATE clients SET Remise=(Re+2) ;
--ELSE
--TN:=NU;
--INSERT INTO trace VALUES (TN,'trop radin');
END IF;
END;
/
le probleme est en haut du sujet
merci
cross
Partager