American elections 1952 1992 year loser YEAR WINNER

  • Slides: 72
Download presentation

Βάση αμερικανικών προεδρικών εκλογών (American elections) Στο δείγμα παρατίθενται εκλογικά αποτελέσματα για τις αναμετρήσεις

Βάση αμερικανικών προεδρικών εκλογών (American elections) Στο δείγμα παρατίθενται εκλογικά αποτελέσματα για τις αναμετρήσεις από το 1952 έως το 1992. Κύριο κλειδί (year, loser). YEAR WINNER 1952 1956 1960 1964 1968 1972 1976 1980 1984 1988 1992 EISENHOWER KENNEDY JOHNSON NIXON CARTER REAGAN BUSH CLINTON W_ VOTES 442 447 303 486 301 520 297 489 525 426 NULL WPARTY REP DEM REP REP DEM W_ STATE TEXAS MASS. TEXAS CALIF. NULL NULL LOSER STEVENSON NIXON GOLDWATER HUMPHREY WALLACE Mc. GOVERN FORD CARTER ANDERSON MONDALE DOUKAKIS BUSH PERAULT L_ VOTES 89 73 219 52 191 46 17 240 49 0 13 41 NULL L_ PARTY DEM REP DEM IND DEM DEM REP IND

ELECTION YEAR WINNER 1952 1956 1960 1964 1968 1972 1976 1980 1984 1988 1992

ELECTION YEAR WINNER 1952 1956 1960 1964 1968 1972 1976 1980 1984 1988 1992 PRESIDENTS WINNER EISENHOWER KENNEDY JOHNSON NIXON CARTER REAGAN BUSH CLINTON W-PARTY REP DEM REP DEM ELECTIONLOSER YEAR LOSER 1952 STEVENSON 1956 STEVENSON 1960 NIXON 1964 GOLDWATER 1968 HUMPHREY 1968 WALLACE 1972 Mc. GOVERN 1976 FORD 1980 CARTER 1980 ANDERSON 1984 MONDALE 1988 DOUKAKIS 1992 BUSH 1992 PERAULT W_STATE TEXAS MASS. TEXAS CALIF. NULL L_VOTES 89 73 219 52 191 46 17 240 49 0 13 41 NULL WINNER EISENHOWER KENNEDY JOHNSON NIXON CARTER REAGAN BUSH CLINTON LOSERS LOSER STEVENSON NIXON GOLDWATER HUMPHREY WALLACE Mc. GOVERN FORD CARTER ANDERSON MONDALE DOUKAKIS BUSH PERAULT W_VOTES 442 447 303 486 301 520 297 489 525 426 NULL L_PARTY DEM REP DEM IND DEM DEM REP IND

Connect to columns 17

Connect to columns 17

22

22

23

23

24

24

CREATE TABLE presidents(winner VARCHAR 2(15) NOT NULL, w_party VARCHAR 2(15), w_state VARCHAR 2(15) );

CREATE TABLE presidents(winner VARCHAR 2(15) NOT NULL, w_party VARCHAR 2(15), w_state VARCHAR 2(15) ); CREATE TABLE losers(loser VARCHAR 2(15) NOT NULL, l_party VARCHAR 2(15)); CREATE TABLE electionwinner(election_year VARCHAR 2(4) NOT NULL, winner VARCHAR 2(15), w_votes NUMBER); CREATE TABLE electionloser(election_year VARCHAR 2(4) NOT NULL, loser VARCHAR 2(15) NOT NULL, l_votes NUMBER); INSERT INSERT INTO INTO presidents VALUES ('EISENHOWER', 'REPUBLICAN', 'TEXAS'); losers VALUES('STEVENSON', 'DEMOCRAT'); electionwinner VALUES('1952', 'EISENHOWER', 442); electionwinner VALUES('1956', 'EISENHOWER', 447); electionloser VALUES('1952', 'STEVENSON', 89); electionloser VALUES('1956', 'STEVENSON', 73);

PRESIDENTS /* Δείξτε όλα τα στοιχεία προέδρων */ SELECT * FROM presidents; /* Δείξτε

PRESIDENTS /* Δείξτε όλα τα στοιχεία προέδρων */ SELECT * FROM presidents; /* Δείξτε όλα τα στοιχεία προέδρων με άλλη σειρά */ SELECT w_party, winner, w_state FROM presidents; WINNER EISENHOWER KENNEDY JOHNSON NIXON CARTER REAGAN BUSH CLINTON W-PARTY REP DEM REP DEM /* Δείξτε όλα τα στοιχεία προέδρων κατά κόμμα και αλφαβητικά */ SELECT * FROM presidents order by w_party, winner; /* Δείξτε όλα τα στοιχεία προέδρων που ανήκουν στο κόμμα των ρεπουμπλικάνων */ SELECT * FROM presidents WHERE w_party = 'REPUBLICAN'; W_STATE TEXAS MASS. TEXAS CALIF. NULL

PRESIDENTS /* τι θα δείξουν οι αναζητήσεις; SELECT winner, w_party, w_state FROM presidents WHERE

PRESIDENTS /* τι θα δείξουν οι αναζητήσεις; SELECT winner, w_party, w_state FROM presidents WHERE w_party = 'REP'; SELECT winner, w_party, w_state FROM presidents WHERE w_party = 'Rep. UBLICAN'; SELECT winner, w_party, w_state FROM presidents WHERE w_party = 'republican'; SELECT winner, w_party, w_state FROM presidents WHERE w_state = 'REPUBLICAN'; */ WINNER EISENHOWER KENNEDY JOHNSON NIXON CARTER REAGAN BUSH CLINTON W-PARTY REP DEM REP DEM W_STATE TEXAS MASS. TEXAS CALIF. NULL

/* Δείξτε στοιχεία για τον NIXON */ SELECT winner, w_party, w_state FROM presidents WHERE

/* Δείξτε στοιχεία για τον NIXON */ SELECT winner, w_party, w_state FROM presidents WHERE winner = 'NIXON'; /* Δείξτε υποψήφιους που έχασαν με ψήφους λιγότερους των 80 */ SELECT loser, election_year, l_votes FROM electionloser where l_votes <80; /* Δείξτε υποψήφιους που έχασαν στις εκλογές πάνω από μία φορά */ SELECT loser, count(*) FROM electionloser GROUP BY loser HAVING count(*) > 1;

/* Δείξτε όλα τα στοιχεία των εκλογών για κάθε έτος εκλογικής αναμέτρησης*/ SELECT electionwinner.

/* Δείξτε όλα τα στοιχεία των εκλογών για κάθε έτος εκλογικής αναμέτρησης*/ SELECT electionwinner. election_year, presidents. winner, w_party, w_votes, electionloser, l_party, l_votes FROM presidents, electionwinner, electionloser, losers WHERE presidents. winner = electionwinner AND electionwinner. election_year = electionloser. election_year AND electionloser = losers. loser order by electionwinner. election_year;

Κάθε οντότητα γίνεται πίνακας με κλειδί το κλειδί της οντότητας • teacher(teacher_code, surname, birthdate,

Κάθε οντότητα γίνεται πίνακας με κλειδί το κλειδί της οντότητας • teacher(teacher_code, surname, birthdate, speciality, office_number, phone) • course(course_code, course_name, semester, content) • student(student_code, surname, birthdate, semester, address, phone) • Στη συνέχεια θα εξετάσουμε τις συσχετίσεις και τότε οι πίνακες αυτοί μπορεί να αλλάξουν.

Μια συσχέτιση «Πολλά-προς-Πολλά» γίνεται πίνακας με κλειδί τα κλειδιά των οντοτήτων που συνδέει •

Μια συσχέτιση «Πολλά-προς-Πολλά» γίνεται πίνακας με κλειδί τα κλειδιά των οντοτήτων που συνδέει • Η συσχέτιση “enrolls” έχει τύπο «Μ: N» . Άρα θα χρειαστεί να κατασκευάσουμε ένα πίνακα enrollments. • Να οι πίνακες της βάσης δεδομένων. • course(course_code, course_name, semester, content, teacher_code) • teacher(teacher_code, surname, birthdate, specialty, office_number, phone) • student(student_code, surname, birthdate, semester, address, phone) • enrollments(student_code, course_code)

Απλοποιημένη βάση διαχείρισης προσωπικού (personnel) ΠΙΝΑΚΑΣ EMPLOY ENAME ΒΑΛΑΚΟΣ ΚΑΜΑΡAΣ ΣΠΥΡΟΥ ΠΛΑΚΙΔΗΣ ΝΙΚΟΥ LANGUAGE

Απλοποιημένη βάση διαχείρισης προσωπικού (personnel) ΠΙΝΑΚΑΣ EMPLOY ENAME ΒΑΛΑΚΟΣ ΚΑΜΑΡAΣ ΣΠΥΡΟΥ ΠΛΑΚΙΔΗΣ ΝΙΚΟΥ LANGUAGE LANG_ CODE COBOL 100 FORTRAN 77 200 COBOL 100 PL/I 300 COBOL 100 FORTRAN 77 200 COBOL 100 PASCAL 400 USE 3 2 2 1 4 5 2 4 1 EMP NO 100 100 200 300 400 500 EXPR SAL 4 4 3 3 4 7 7 5 5 1200 1150 1450 1300 1500 σύνθετο κύριο κλειδί = (EMPNO, LANG_CODE, P_CODE) Σχήμα Πρώτη κανονική μορφή βάσης δεδομένων προσωπικού P_CODE PNAME 020 010 010 020 020 020 ΑΠΟΘΗΚΕΣ ΕΡΓΟ Α ΑΠΟΘΗΚΕΣ ΕΡΓΟ Α BUDGET P_TIME 100000 200000 100000 200000 80 20 20 80 100 100

Δεύτερη κανονική μορφή Order_no C_code Κύριο κλειδί C_name Address Order_no Item_no Κύριο κλειδί Item_no

Δεύτερη κανονική μορφή Order_no C_code Κύριο κλειδί C_name Address Order_no Item_no Κύριο κλειδί Item_no I_name Κύριο κλειδί qty List_price O_date

Έστω ο παρακάτω πίνακας της βάσης δεδομένων βιβλιοπωλείου: BOOKS (πίνακας στοιχείων βιβλίου) ISBN Title

Έστω ο παρακάτω πίνακας της βάσης δεδομένων βιβλιοπωλείου: BOOKS (πίνακας στοιχείων βιβλίου) ISBN Title Διεθνής Αριθμός Βιβλίου 0 -07 -123057 -2 Τίτλος 0 -13 -727827 -6 0 -13 -861337 -0 Author (acode, aname) Συγγραφέας (Κωδικός, όνομα) (100, Ramakrishnan, (200, Gehrke) Database Management Systems The essence of (300, Rolland) databases A first course (400, Ullman), in database (500, Widom) systems Γράψτε 1 NF, 2 NF, 3 NF Publisher (pcode, pname) Εκδότης (Κωδικός, όνομα) 10, Mc. GRAWHILL Pub_ year Έτος έκδοσης 2003 Price 20, PRENTICE HALL 1998 30 1997 90 Τιμή καταλόγου 70

Μαθητολόγιο student Studno 10 20 30 Sname CODD MARTIN DATE Address ATHENS BERLIN Student_lesson

Μαθητολόγιο student Studno 10 20 30 Sname CODD MARTIN DATE Address ATHENS BERLIN Student_lesson Studno 10 10 20 20 30 Lesson 100 200 100 Lesson L_code 100 200 Lesson DATABASE II mark 75 25 30 70 100 Semester C D C

Μητρώο καθηγητών Teacher Tno 100 200 tname CODD MARTIN Address ATHENS 300 DATE BERLIN

Μητρώο καθηγητών Teacher Tno 100 200 tname CODD MARTIN Address ATHENS 300 DATE BERLIN Speciality DATABASE BUSSINESS INTELLIGENCE DATABASE Teaches Studno 100 200 300 Lesson 100 200 100 L_code 100 200 Lesson DATABASE II Semester C D Tno 100 200 300