Ich versuchte mit Online-SQL zu Mysql Convert-Tool, aber es hat mir nicht geholfen. Kann mir jemand helfen, diese Prozedur in mysql-Version zu konvertieren?Umwandlung dieser Oracle SQL-Prozedur in Mysql-Prozedur
create or replace procedure avgmarks is
cursor c_iamarks is
select greatest(test1, test2) as a
,greatest(test1, test3) as b
,greatest(test3, test2) as c
from iamarks
where finalia is null
for update;
c_a number;
c_b number;
c_c number;
c_sm number;
c_av number;
begin
open c_iamarks;
loop
fetch c_iamarks
into c_a
,c_b
,c_c;
exit when c_iamarks%notfound;
--DBMS_OUTPUT.PUT_LINE(C_A || ' ' || C_B || ' ' || C_C);
if (c_a != c_b)
then
c_sm := c_a + c_b;
else
c_sm := c_a + c_c;
end if;
c_av := c_sm/2;
--DBMS_OUTPUT.PUT_LINE('SUM = '||C_SM);
--DBMS_OUTPUT.PUT_LINE('AVERAGE = '||C_AV);
update iamarks
set finalia = c_av
where current of c_iamarks;
end loop;
close c_iamarks;
end;
/
In dieser ich bin Berechnung durchschnittlich besten zwei Marken aus 3 Tests und wenn ich diese Prozedur aufrufen sollte es die Werte in der Tabelle ändern.
Ja, das getan werden kann. Ich habe das bereits getan, aber ich wollte wissen, wie man das sql zu mysql dats es konvertiert. – Swaroop
Hey, kannst du mir noch eine Sache helfen? Wir verwenden MINUS oder EXCEPT in Oracle, aber ich weiß nicht, was ich in mysql für die folgende Abfrage verwenden soll: ** SELECT E.FNAME, E.LNAME FROM EMPLOYEE E WHERE NICHT VORHANDEN ((SELECT PNO FROM PROJECT WHERE DNO = ' 5 ') MINUS (SELECT PNO VON WORKS_ON WHERE E.SSN = SSN)); ** – Swaroop
Hallo, Da ich nichts über mysql Pakete weiß, entschied ich mich für die SQL-Option. Was auch immer funktioniert, würde ich sagen. Besser als eine neue Frage, um Minus-Operator in MySQL zu simulieren. – Rene