# union query description query2(CD) :- exam_record("09089903",C,X0,X1,X2,X3,X4), course(C,CD).
#import(demo,"dlv","dlv","SELECT MATRICOLA, CODICE_INSEGNAMENTO, CODICE_ESAME, DATA, VOTO, REGOLARITA, ANNO_ACCADEMICO FROM dati_esami",dati_esami). #import(demo,"dlv","dlv","SELECT CODICE_ESAME, CODICE_PROFESSORE, ANNO_ACCADEMICO FROM affidamenti_ing_informatica",affidamenti_ing_informatica). #import(demo,"dlv","dlv","SELECT CODICE, NOME, COGNOME FROM dati_professori",dati_professori). #import(demo,"dlv","dlv","SELECT CODICE_FACOLTA, CODICE, DESCRIZIONE, ATTIVAZIONE FROM esame",esame). #import(demo,"dlv","dlv","SELECT CODICE, DESCRIZIONE FROM esame_diploma",esame_diploma). course(X1,X2):-courseD(X1,X2),not courseCOMPL(X1,X2). exam_recordCOMPL(X1,X2,X3,X4,Y5,Y6,Y7) v exam_recordCOMPL(X1,X2,X3,X4,Z5,Z6,Z7) :- exam_recordD(X1,X2,X3,X4,Y5,Y6,Y7),exam_recordD(X1,X2,X3,X4,Z5,Z6,Z7),Y5<>Z5. exam_recordCOMPL(X1,X2,X3,X4,Y5,Y6,Y7) v exam_recordCOMPL(X1,X2,X3,X4,Z5,Z6,Z7) :- exam_recordD(X1,X2,X3,X4,Y5,Y6,Y7),exam_recordD(X1,X2,X3,X4,Z5,Z6,Z7),Y6<>Z6. exam_recordCOMPL(X1,X2,X3,X4,Y5,Y6,Y7) v exam_recordCOMPL(X1,X2,X3,X4,Z5,Z6,Z7) :- exam_recordD(X1,X2,X3,X4,Y5,Y6,Y7),exam_recordD(X1,X2,X3,X4,Z5,Z6,Z7),Y7<>Z7. exam_record(X1,X2,X3,X4,X5,X6,X7):-exam_recordD(X1,X2,X3,X4,X5,X6,X7),not exam_recordCOMPL(X1,X2,X3,X4,X5,X6,X7). courseD(X1,X2):-esame(A_1,X1,X2,A_2). courseD(X1,X2):-esame_diploma(X1,X2). exam_recordD(X1,X2,Z,W,X4,X5,Y):-affidamenti_ing_informatica(X2,X3,Y),dati_esami(X1,A_1,X2,X5,X4,A_2,Y),dati_professori(X3,Z,W). query2(CD):-course(C,CD),exam_record("09089903",C,_,_,_,_,_). query2(CD)? #export(demo ,"dlv", "dlv", query2, query2).
Go Back