SlideShare a Scribd company logo
1 of 14
Άσκηση 2
Γ.Μανάρας
1
 Πως αλλάζουμε τη δομή ενός πίνακα
 Τύποι δεδομένων στην MySQL
 Εισαγωγή δεδομένων από αρχείο
 Πρόσθετοι τρόποι σύνταξης της Select
2
 Αλλαγές στη δομή πίνακα γίνονται με την εντολή alter
 Υπάρχουν διαφορετικοί τρόποι σύνταξης της alter ανάλογα με το τι θέλουμε να κάνουμε
 alter table old_name rename new_name;
alter table table_name drop column column_name;
alter table table_name add column_name column_type;
alter table table_name change old_column_name new_column_name
new_column_type;
1. Να αλλάξετε το όνομα του πίνακα students σε student
2. Να καταργήσετε την κολώνα age
3. Προσθέστε μία στήλη με όνομα ilikia , επιβεβαιώστε τις μέχρι τώρα αλλαγές
4. Ενημερώστε τις εγγραφές ώστε η στήλη ilikia να έχει τη ίδια τιμή δηλ. 22
5. Αλλάξτε το όνομα της στήλης ΑΜ σε regnum και τον τύπο της σε int
3
1. Να αλλάξετε το όνομα του πίνακα students σε student
 mysql> alter table students rename student;
2. Να καταργήσετε την κολώνα age
 mysql> alter table student drop column age;
3. Προσθέστε μία στήλη με όνομα ilikia , επιβεβαιώστε τις μέχρι τώρα αλλαγές
 mysql> alter table student add ilikia tinyint;
4. Ενημερώστε τις εγγραφές ώστε η στήλη ilikia να έχει τη ίδια τιμή δηλ. 22
 mysql> Update student set ilikia = 22;
5. Αλλάξτε το όνομα της στήλης ΑΜ σε regnum και τον τύπο της σε int
 mysql> alter table student change AM regnum int;
6. Αλλάξτε το όνομα της στήλης ilikia σε age
 mysql>alter table student change ilikia age tinyint;
 Columns: (regnum, int), name, semester, (age, tinyint)
4
Γενικά οι τύποι δεδομένων στη MySQL μπορεί να χωριστούν σε τρεις κατηγορίες:
 αριθμητικοί τύποι (γενικά προτιμάτε τους μεγαλύτερους)
 αλφαριθμητικοί τύποι και
 τύποι ημερομηνίας και χρόνου
5
6
7
8
9
 msql>load data [local] infile “filename.ext” into table table_name;
 $ pwd
/home/users/34567
 filename.ext : full-path name
/home/users/34567/data.txt
 $ gedit
 Αρχείο κειμένου που
- σε κάθε γραμμή αντιστοιχεί μία εγγραφή και
- οι στήλες του χωρίζονται με tab
10
 Στη συνέχεια διαγράψτε όλες τις εγγραφές του πίνακα student
 Καταχωρήστε σε αρχείο κειμένου τις εγγραφές που βλέπετε παρακάτω και
φορτώστε τις στον πίνακα student
 regnum, name, semester, age
 121 Steve A 33
145 Graham B 45
646 Yanis A 37
756 Pye B 28
913 Evi A 30
152 George B 33
123 David A 60
178 Paul B 28
199 Eve A 28
11
 Με τη Select μπορούμε να ταξινομήσουμε ένα πίνακα χωρίς να γράψουμε κώδικα!
 Συνήθως οι γλώσσες προγραμματισμού δεν έχουν το sort στα βασικά τους εργαλεία, αλλά
σε libraries όπως η C++ η καθόλου όπως η C
 Η μόνη από τις παλαιές γλώσσες που το είχε στα βασικά της εργαλεία ήταν
η COBOL, αλλά και εκεί για να ταξινομηθεί ένας πίνακας χρειάζεται να γράψουμε περίπου
μία σελίδα κώδικα!
 select * from table_name order by column1_name,…, columnN_name;
 Να ταξινομήσετε τους σπουδαστές ως προς το regnum
Select * from student order by regnum;
 Το ίδιο κατά φθίνουσα σειρά
Select * from student order by regnum desc;
12
 Έκφραση limit
Mπορούμε να περιορίσουμε τα αποτελέσματα μιας αναζήτησης ώστε
να επιστρέφει μόνο το πρώτο record του answer set
select * from students limit 1;
 Χαρακτήρες μπαλαντέρ: % και _
Μπορούμε να αναζητήσουμε εγγραφές με βάση μέρος ενός αλφαριθμητικού
- Βρείτε όσα ονόματα περιέχουν ‘a’
select * from student where name like ‘%a%’;
- Όσα αρχίζουν από ‘e’
select * from student where name like ‘e%’;
- Όσα τελειώνουν σε ‘e’
select * from student where name like ‘%e’;
13
- Όσα ονόματα έχουν 3 ακριβώς χαρακτήρες
select * from student where name like ‘___’;
- Όσα ονόματα έχουν πρώτο χαρακτήρα το ‘E’ και τρίτο το ‘I’
select * from student where name like ‘E_i%’;
14

More Related Content

Similar to SQL1v3

03 - SQL (μέρος 1)
03 - SQL (μέρος 1)03 - SQL (μέρος 1)
03 - SQL (μέρος 1)Fotis Kokkoras
 
Εισαγωγή στις αρχές της επιστήμης των ΗΥ Κεφ 2 2 8
Εισαγωγή στις αρχές της επιστήμης των ΗΥ Κεφ 2 2 8Εισαγωγή στις αρχές της επιστήμης των ΗΥ Κεφ 2 2 8
Εισαγωγή στις αρχές της επιστήμης των ΗΥ Κεφ 2 2 8Ιωάννου Γιαννάκης
 
Microsoft Access Θεωρία 3/6
Microsoft Access Θεωρία 3/6Microsoft Access Θεωρία 3/6
Microsoft Access Θεωρία 3/6Michael Ntallas
 
ECDL Excel Σημειώσεις 4/7
ECDL Excel Σημειώσεις 4/7ECDL Excel Σημειώσεις 4/7
ECDL Excel Σημειώσεις 4/7Michael Ntallas
 

Similar to SQL1v3 (6)

03 - SQL (μέρος 1)
03 - SQL (μέρος 1)03 - SQL (μέρος 1)
03 - SQL (μέρος 1)
 
Εισαγωγή στις αρχές της επιστήμης των ΗΥ Κεφ 2 2 8
Εισαγωγή στις αρχές της επιστήμης των ΗΥ Κεφ 2 2 8Εισαγωγή στις αρχές της επιστήμης των ΗΥ Κεφ 2 2 8
Εισαγωγή στις αρχές της επιστήμης των ΗΥ Κεφ 2 2 8
 
Microsoft Access Θεωρία 3/6
Microsoft Access Θεωρία 3/6Microsoft Access Θεωρία 3/6
Microsoft Access Θεωρία 3/6
 
ECDL Excel Σημειώσεις 4/7
ECDL Excel Σημειώσεις 4/7ECDL Excel Σημειώσεις 4/7
ECDL Excel Σημειώσεις 4/7
 
Εισαγωγή στην SQL
Εισαγωγή στην SQLΕισαγωγή στην SQL
Εισαγωγή στην SQL
 
SQL0v4
SQL0v4SQL0v4
SQL0v4
 

More from Yanis Manaras (20)

Webclass admin 4
Webclass admin 4Webclass admin 4
Webclass admin 4
 
What iswebclass 4
What iswebclass 4What iswebclass 4
What iswebclass 4
 
Webclass teacher 4
Webclass teacher 4Webclass teacher 4
Webclass teacher 4
 
Webclass student 4
Webclass student 4Webclass student 4
Webclass student 4
 
Webclass Student
Webclass StudentWebclass Student
Webclass Student
 
Ads 1 fibonacci
Ads 1 fibonacciAds 1 fibonacci
Ads 1 fibonacci
 
Ads 1 alt_e
Ads 1 alt_eAds 1 alt_e
Ads 1 alt_e
 
Ads 1 common
Ads 1 commonAds 1 common
Ads 1 common
 
HTML and Javascript
HTML and JavascriptHTML and Javascript
HTML and Javascript
 
Signals
SignalsSignals
Signals
 
ΛΣ2_IPC
ΛΣ2_IPCΛΣ2_IPC
ΛΣ2_IPC
 
ΛΣ1-002
ΛΣ1-002ΛΣ1-002
ΛΣ1-002
 
Processes
ProcessesProcesses
Processes
 
ΛΣ1-001
ΛΣ1-001ΛΣ1-001
ΛΣ1-001
 
SE5
SE5SE5
SE5
 
SE4
SE4SE4
SE4
 
SQL9v0
SQL9v0SQL9v0
SQL9v0
 
SQL8v1
SQL8v1SQL8v1
SQL8v1
 
ΛΣ1FILES1v0
ΛΣ1FILES1v0ΛΣ1FILES1v0
ΛΣ1FILES1v0
 
ΛΣ1FILES2v0
ΛΣ1FILES2v0ΛΣ1FILES2v0
ΛΣ1FILES2v0
 

Recently uploaded

Μαθητικά συμβούλια .
Μαθητικά συμβούλια                                  .Μαθητικά συμβούλια                                  .
Μαθητικά συμβούλια .Dimitra Mylonaki
 
ΙΣΤΟΡΙΑ Α' ΓΥΜΝΑΣΙΟΥ : ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΑΣΚΗΣΕΙΣ ΜΕΡΟΣ 1ο
ΙΣΤΟΡΙΑ Α' ΓΥΜΝΑΣΙΟΥ : ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΑΣΚΗΣΕΙΣ  ΜΕΡΟΣ 1ο ΙΣΤΟΡΙΑ Α' ΓΥΜΝΑΣΙΟΥ : ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΑΣΚΗΣΕΙΣ  ΜΕΡΟΣ 1ο
ΙΣΤΟΡΙΑ Α' ΓΥΜΝΑΣΙΟΥ : ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΑΣΚΗΣΕΙΣ ΜΕΡΟΣ 1ο Χρύσα Παπακωνσταντίνου
 
-Διψήφιοι αριθμοί-δεκαδες μονάδες-θέση ψηφίου Α- Β τάξη
-Διψήφιοι  αριθμοί-δεκαδες μονάδες-θέση ψηφίου Α- Β τάξη-Διψήφιοι  αριθμοί-δεκαδες μονάδες-θέση ψηφίου Α- Β τάξη
-Διψήφιοι αριθμοί-δεκαδες μονάδες-θέση ψηφίου Α- Β τάξηΟΛΓΑ ΤΣΕΧΕΛΙΔΟΥ
 
Σουρεαλιστικά ταξίδια μέσα από την τέχνη
Σουρεαλιστικά ταξίδια μέσα από την τέχνηΣουρεαλιστικά ταξίδια μέσα από την τέχνη
Σουρεαλιστικά ταξίδια μέσα από την τέχνηTheodora Chandrinou
 
Μαθητικές καταλήψεις
Μαθητικές                                  καταλήψειςΜαθητικές                                  καταλήψεις
Μαθητικές καταλήψειςDimitra Mylonaki
 
ΙΣΤΟΡΙΑ Α' ΓΥΜΝΑΣΙΟΥ : ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΑΣΚΗΣΕΙΣ ΜΕΡΟΣ 2ο
ΙΣΤΟΡΙΑ Α' ΓΥΜΝΑΣΙΟΥ : ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΑΣΚΗΣΕΙΣ ΜΕΡΟΣ 2οΙΣΤΟΡΙΑ Α' ΓΥΜΝΑΣΙΟΥ : ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΑΣΚΗΣΕΙΣ ΜΕΡΟΣ 2ο
ΙΣΤΟΡΙΑ Α' ΓΥΜΝΑΣΙΟΥ : ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΑΣΚΗΣΕΙΣ ΜΕΡΟΣ 2οΧρύσα Παπακωνσταντίνου
 
5ο Κεφάλαιο - Το Λογισμικό του Υπολογιστή.pptx
5ο Κεφάλαιο - Το Λογισμικό του Υπολογιστή.pptx5ο Κεφάλαιο - Το Λογισμικό του Υπολογιστή.pptx
5ο Κεφάλαιο - Το Λογισμικό του Υπολογιστή.pptxAthina Tziaki
 

Recently uploaded (9)

Μαθητικά συμβούλια .
Μαθητικά συμβούλια                                  .Μαθητικά συμβούλια                                  .
Μαθητικά συμβούλια .
 
ΙΣΤΟΡΙΑ Α΄ΓΥΜΝΑΣΙΟΥ : ΕΠΑΝΑΛΗΨΗ 2024
ΙΣΤΟΡΙΑ Α΄ΓΥΜΝΑΣΙΟΥ  : ΕΠΑΝΑΛΗΨΗ 2024ΙΣΤΟΡΙΑ Α΄ΓΥΜΝΑΣΙΟΥ  : ΕΠΑΝΑΛΗΨΗ 2024
ΙΣΤΟΡΙΑ Α΄ΓΥΜΝΑΣΙΟΥ : ΕΠΑΝΑΛΗΨΗ 2024
 
ΙΣΤΟΡΙΑ Α' ΓΥΜΝΑΣΙΟΥ : ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΑΣΚΗΣΕΙΣ ΜΕΡΟΣ 1ο
ΙΣΤΟΡΙΑ Α' ΓΥΜΝΑΣΙΟΥ : ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΑΣΚΗΣΕΙΣ  ΜΕΡΟΣ 1ο ΙΣΤΟΡΙΑ Α' ΓΥΜΝΑΣΙΟΥ : ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΑΣΚΗΣΕΙΣ  ΜΕΡΟΣ 1ο
ΙΣΤΟΡΙΑ Α' ΓΥΜΝΑΣΙΟΥ : ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΑΣΚΗΣΕΙΣ ΜΕΡΟΣ 1ο
 
-Διψήφιοι αριθμοί-δεκαδες μονάδες-θέση ψηφίου Α- Β τάξη
-Διψήφιοι  αριθμοί-δεκαδες μονάδες-θέση ψηφίου Α- Β τάξη-Διψήφιοι  αριθμοί-δεκαδες μονάδες-θέση ψηφίου Α- Β τάξη
-Διψήφιοι αριθμοί-δεκαδες μονάδες-θέση ψηφίου Α- Β τάξη
 
Σουρεαλιστικά ταξίδια μέσα από την τέχνη
Σουρεαλιστικά ταξίδια μέσα από την τέχνηΣουρεαλιστικά ταξίδια μέσα από την τέχνη
Σουρεαλιστικά ταξίδια μέσα από την τέχνη
 
Μαθητικές καταλήψεις
Μαθητικές                                  καταλήψειςΜαθητικές                                  καταλήψεις
Μαθητικές καταλήψεις
 
Σεβασμός .
Σεβασμός                                   .Σεβασμός                                   .
Σεβασμός .
 
ΙΣΤΟΡΙΑ Α' ΓΥΜΝΑΣΙΟΥ : ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΑΣΚΗΣΕΙΣ ΜΕΡΟΣ 2ο
ΙΣΤΟΡΙΑ Α' ΓΥΜΝΑΣΙΟΥ : ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΑΣΚΗΣΕΙΣ ΜΕΡΟΣ 2οΙΣΤΟΡΙΑ Α' ΓΥΜΝΑΣΙΟΥ : ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΑΣΚΗΣΕΙΣ ΜΕΡΟΣ 2ο
ΙΣΤΟΡΙΑ Α' ΓΥΜΝΑΣΙΟΥ : ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΑΣΚΗΣΕΙΣ ΜΕΡΟΣ 2ο
 
5ο Κεφάλαιο - Το Λογισμικό του Υπολογιστή.pptx
5ο Κεφάλαιο - Το Λογισμικό του Υπολογιστή.pptx5ο Κεφάλαιο - Το Λογισμικό του Υπολογιστή.pptx
5ο Κεφάλαιο - Το Λογισμικό του Υπολογιστή.pptx
 

SQL1v3

  • 2.  Πως αλλάζουμε τη δομή ενός πίνακα  Τύποι δεδομένων στην MySQL  Εισαγωγή δεδομένων από αρχείο  Πρόσθετοι τρόποι σύνταξης της Select 2
  • 3.  Αλλαγές στη δομή πίνακα γίνονται με την εντολή alter  Υπάρχουν διαφορετικοί τρόποι σύνταξης της alter ανάλογα με το τι θέλουμε να κάνουμε  alter table old_name rename new_name; alter table table_name drop column column_name; alter table table_name add column_name column_type; alter table table_name change old_column_name new_column_name new_column_type; 1. Να αλλάξετε το όνομα του πίνακα students σε student 2. Να καταργήσετε την κολώνα age 3. Προσθέστε μία στήλη με όνομα ilikia , επιβεβαιώστε τις μέχρι τώρα αλλαγές 4. Ενημερώστε τις εγγραφές ώστε η στήλη ilikia να έχει τη ίδια τιμή δηλ. 22 5. Αλλάξτε το όνομα της στήλης ΑΜ σε regnum και τον τύπο της σε int 3
  • 4. 1. Να αλλάξετε το όνομα του πίνακα students σε student  mysql> alter table students rename student; 2. Να καταργήσετε την κολώνα age  mysql> alter table student drop column age; 3. Προσθέστε μία στήλη με όνομα ilikia , επιβεβαιώστε τις μέχρι τώρα αλλαγές  mysql> alter table student add ilikia tinyint; 4. Ενημερώστε τις εγγραφές ώστε η στήλη ilikia να έχει τη ίδια τιμή δηλ. 22  mysql> Update student set ilikia = 22; 5. Αλλάξτε το όνομα της στήλης ΑΜ σε regnum και τον τύπο της σε int  mysql> alter table student change AM regnum int; 6. Αλλάξτε το όνομα της στήλης ilikia σε age  mysql>alter table student change ilikia age tinyint;  Columns: (regnum, int), name, semester, (age, tinyint) 4
  • 5. Γενικά οι τύποι δεδομένων στη MySQL μπορεί να χωριστούν σε τρεις κατηγορίες:  αριθμητικοί τύποι (γενικά προτιμάτε τους μεγαλύτερους)  αλφαριθμητικοί τύποι και  τύποι ημερομηνίας και χρόνου 5
  • 6. 6
  • 7. 7
  • 8. 8
  • 9. 9
  • 10.  msql>load data [local] infile “filename.ext” into table table_name;  $ pwd /home/users/34567  filename.ext : full-path name /home/users/34567/data.txt  $ gedit  Αρχείο κειμένου που - σε κάθε γραμμή αντιστοιχεί μία εγγραφή και - οι στήλες του χωρίζονται με tab 10
  • 11.  Στη συνέχεια διαγράψτε όλες τις εγγραφές του πίνακα student  Καταχωρήστε σε αρχείο κειμένου τις εγγραφές που βλέπετε παρακάτω και φορτώστε τις στον πίνακα student  regnum, name, semester, age  121 Steve A 33 145 Graham B 45 646 Yanis A 37 756 Pye B 28 913 Evi A 30 152 George B 33 123 David A 60 178 Paul B 28 199 Eve A 28 11
  • 12.  Με τη Select μπορούμε να ταξινομήσουμε ένα πίνακα χωρίς να γράψουμε κώδικα!  Συνήθως οι γλώσσες προγραμματισμού δεν έχουν το sort στα βασικά τους εργαλεία, αλλά σε libraries όπως η C++ η καθόλου όπως η C  Η μόνη από τις παλαιές γλώσσες που το είχε στα βασικά της εργαλεία ήταν η COBOL, αλλά και εκεί για να ταξινομηθεί ένας πίνακας χρειάζεται να γράψουμε περίπου μία σελίδα κώδικα!  select * from table_name order by column1_name,…, columnN_name;  Να ταξινομήσετε τους σπουδαστές ως προς το regnum Select * from student order by regnum;  Το ίδιο κατά φθίνουσα σειρά Select * from student order by regnum desc; 12
  • 13.  Έκφραση limit Mπορούμε να περιορίσουμε τα αποτελέσματα μιας αναζήτησης ώστε να επιστρέφει μόνο το πρώτο record του answer set select * from students limit 1;  Χαρακτήρες μπαλαντέρ: % και _ Μπορούμε να αναζητήσουμε εγγραφές με βάση μέρος ενός αλφαριθμητικού - Βρείτε όσα ονόματα περιέχουν ‘a’ select * from student where name like ‘%a%’; - Όσα αρχίζουν από ‘e’ select * from student where name like ‘e%’; - Όσα τελειώνουν σε ‘e’ select * from student where name like ‘%e’; 13
  • 14. - Όσα ονόματα έχουν 3 ακριβώς χαρακτήρες select * from student where name like ‘___’; - Όσα ονόματα έχουν πρώτο χαρακτήρα το ‘E’ και τρίτο το ‘I’ select * from student where name like ‘E_i%’; 14