ici, j'ai essayé de donner une réduction basée sur la quantité commandée en utilisant la procédure. mais je ne sais pas comment assigner une valeur de colonne à la variable dans la procédure.comment affecter une variable dans la procédure dans SAP HANA
ici mon code:
create column table "KABIL_PRACTICE"."SALES_IF_ELSE"
(
"SALES_ID" integer,
"PRODUCT_ID" integer,
"QTY" integer,
"DISCOUNT" integer,
"SALES_AMOUNT" Double
);
insert into "KABIL_PRACTICE"."SALES_IF_ELSE" ("SALES_ID","PRODUCT_ID","QTY","SALES_AMOUNT") values (1,101,15,1500);
insert into "KABIL_PRACTICE"."SALES_IF_ELSE" ("SALES_ID","PRODUCT_ID","QTY","SALES_AMOUNT") values (2,102,25,2500);
insert into "KABIL_PRACTICE"."SALES_IF_ELSE" ("SALES_ID","PRODUCT_ID","QTY","SALES_AMOUNT") values (3,103,35,3500);
insert into "KABIL_PRACTICE"."SALES_IF_ELSE" ("SALES_ID","PRODUCT_ID","QTY","SALES_AMOUNT") values (4,104,40,4000);
insert into "KABIL_PRACTICE"."SALES_IF_ELSE" ("SALES_ID","PRODUCT_ID","QTY","SALES_AMOUNT") values (5,105,27,2700);
insert into "KABIL_PRACTICE"."SALES_IF_ELSE" ("SALES_ID","PRODUCT_ID","QTY","SALES_AMOUNT") values (6,106,32,3200);
insert into "KABIL_PRACTICE"."SALES_IF_ELSE" ("SALES_ID","PRODUCT_ID","QTY","SALES_AMOUNT") values (7,107,19,1900);
create procedure "KABIL_PRACTICE"."IF_ELSE_DISC"
language sqlscript
as begin
declare QTY integer ;
select "QTY" from "KABIL_PRACTICE"."SALES_IF_ELSE" := QTY;
if (QTY > 25)
then
update "KABIL_PRACTICE"."SALES_IF_ELSE" set "DISCOUNT" = 5;
else if
update "KABIL_PRACTICE"."SALES_IF_ELSE" set "DISCOUNT" = 1;
end if;
end if;
end;
quelqu'un me aider ....
Salut, merci pour votre réponse, mais ici je l'ai utilisé ce code:. « Qty = sélectionner "QTY" de "KABIL_PRACTICE" "SALES_IF_ELSE"; if (QTY> 25) 'mais il affiche une erreur comme celle-ci: type de données incohérent: le type INT n'est pas comparable au type TABLE. –
Pourriez-vous expliquer un peu plus pourquoi vous avez fait cela? L'erreur est survenue parce que vous comparez une table temporaire à un seul entier. Vous devez utiliser une variable au lieu d'une table si vous souhaitez évaluer par rapport à un entier. – DaveBeck
Salut Dave, Je veux juste vérifier les valeurs de la colonne "QTY" et si la quantité est supérieure à 25, je voudrais donner la réduction. –