From 1467d3ca575dabdbc7e0255a671457d0467f422d Mon Sep 17 00:00:00 2001 From: M.Gergo Date: Fri, 11 Jun 2021 03:35:05 +0200 Subject: Rev: 4790 --- .../mayor-naplo/update/pre004789-2-intezmeny.sql | 44 ++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 mayor-orig/mayor-naplo/update/pre004789-2-intezmeny.sql (limited to 'mayor-orig/mayor-naplo/update/pre004789-2-intezmeny.sql') diff --git a/mayor-orig/mayor-naplo/update/pre004789-2-intezmeny.sql b/mayor-orig/mayor-naplo/update/pre004789-2-intezmeny.sql new file mode 100644 index 00000000..4dd6c244 --- /dev/null +++ b/mayor-orig/mayor-naplo/update/pre004789-2-intezmeny.sql @@ -0,0 +1,44 @@ +DELIMITER // + DROP FUNCTION IF EXISTS diakNaploSorszam // + CREATE function diakNaploSorszam ( thisDiakId INT, thisTanev INT, thisOsztalyId INT ) returns INT + READS SQL DATA + BEGIN + DECLARE inKezdesDt,inZarasDt DATE; + DECLARE a,i INT; -- for loop + DECLARE b DATE; -- for loop + DECLARE c DATE; + DECLARE d INT; + DECLARE e VARCHAR(255); + + DECLARE cur1 + CURSOR FOR + SELECT diakId,IF(beDt=inKezdesDt) + HAVING (aktJogviszonyDb>0 or elozoStatusz in ('magántanuló','jogviszonyban van','egyéni munkarend')) + ORDER BY tolDt, CONCAT_WS(' ',viseltCsaladinev,viseltUtonev) COLLATE utf8_hungarian_ci; + + DECLARE EXIT HANDLER FOR NOT FOUND RETURN NULL; + SELECT kezdesDt FROM szemeszter WHERE tanev=thisTanev AND szemeszter=1 INTO inKezdesDt; + SELECT MAX(zarasDt) FROM szemeszter WHERE tanev=thisTanev INTO inZarasDt; + + SET i := 1; + OPEN cur1; + lo: LOOP +-- FETCH cur1 INTO a,b; + FETCH cur1 INTO a,b,c,d,e; + IF a = thisDiakId THEN + LEAVE lo; + END IF; + SET i := i+1; + END LOOP; + CLOSE cur1; + return i; + END; // + DELIMITER ; // -- cgit v1.2.3