Guest User

Untitled

a guest
Apr 25th, 2018
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 0.60 KB | None | 0 0
  1. CREATE OR REPLACE FUNCTION removeTurmasComMenosDe(n int4)
  2.  RETURNS VOID AS
  3.  $$
  4.  DECLARE
  5.   TUPLA record;
  6.  BEGIN
  7.   FOR TUPLA IN
  8.    SELECT TU.ID, COUNT(FR.ID_EST) AS QTD_ALUNOS
  9.    FROM TURMA AS TU LEFT OUTER JOIN FREQUENTA AS FR ON TU.ID = FR.ID_TURMA
  10.    GROUP BY TU.ID
  11.    ORDER BY QTD_ALUNOS
  12.   LOOP
  13.    IF TUPLA.QTD_ALUNOS <= n THEN
  14.     DELETE FROM FREQUENTA WHERE ID_TURMA = TUPLA.ID;
  15.     DELETE FROM ENSINA WHERE ID_TURMA = TUPLA.ID;
  16.     DELETE FROM HORARIO_AULA WHERE ID_TURMA = TUPLA.ID;
  17.     DELETE FROM TURMA WHERE ID = TUPLA.ID;
  18.    
  19.    END IF;
  20.   END LOOP;
  21.  
  22.  END;
  23.  
  24.  $$ LANGUAGE 'PLPGSQL';
Add Comment
Please, Sign In to add comment