MariaDB Εκμάθηση: Μάθετε Σύνταξη, Εντολές με Παραδείγματα

Τι είναι MariaDB?

MariaDB είναι ένα πιρούνι του MySQL σύστημα διαχείρισης βάσης δεδομένων. Δημιουργήθηκε από τους αρχικούς προγραμματιστές του. Αυτό το εργαλείο DBMS προσφέρει δυνατότητες επεξεργασίας δεδομένων τόσο για μικρές όσο και για εταιρικές εργασίες.

MariaDB είναι μια βελτιωμένη έκδοση του MySQL. Έρχεται με πολλά ενσωματωμένα ισχυρά χαρακτηριστικά και πολλές δυνατότητες χρήσης, βελτιώσεις ασφάλειας και απόδοσης που δεν μπορείτε να βρείτε MySQL.

Εδώ είναι τα χαρακτηριστικά του MariaDB:

  • It operaυπό τις άδειες GPL, BSD ή LGPL.
  • MariaDB υποστηρίζει μια δημοφιλή και τυπική γλώσσα ερωτημάτων.
  • Έρχεται με πολλές μηχανές αποθήκευσης, συμπεριλαμβανομένων των υψηλών επιδόσεων που μπορούν να ενσωματωθούν με άλλα συστήματα διαχείρισης σχεσιακών βάσεων δεδομένων.
  • Παρέχει το Galera cluster τεχνολογία.
  • MariaDB υποστηρίζει την PHP, μια δημοφιλή γλώσσα για την ανάπτυξη ιστού.
  • MariaDB μπορεί να τρέξει σε διαφορετικά operating συστήματα και υποστηρίζει πολλές γλώσσες προγραμματισμού.
  • MariaDB συνοδεύεται από πρόσθετες εντολές που δεν είναι διαθέσιμες MySQL. MySQL έχει χαρακτηριστικά που έχουν αρνητικό αντίκτυπο στην απόδοση του DBMS. Τέτοια χαρακτηριστικά έχουν αντικατασταθεί σε MariaDB.

MariaDB έναντι MySQL

Παρακάτω είναι μερικές βασικές διαφορές μεταξύ MariaDB vs MySQL

Παράμετρος MariaDB MySQL
Περισσότερες επιλογές για μηχανές αποθήκευσης MariaDB έχει 12 νέες μηχανές αποθήκευσης που δεν θα βρείτε MySQL. Έχει λιγότερες επιλογές αποθήκευσης σε σύγκριση με MariaDB.
Βελτιώσεις ταχύτητας MariaDB δείχνει βελτιωμένη ταχύτητα σε σύγκριση με MySQL. Έρχεται με πολλές δυνατότητες για βελτιστοποίηση της ταχύτητας. Τέτοια χαρακτηριστικά περιλαμβάνουν παραγόμενες προβολές/πίνακες, υποερώτημα, έλεγχος εκτέλεσης, πρόσβαση στο δίσκο και έλεγχο βελτιστοποίησης. MySQL παρουσιάζει μικρότερη ταχύτητα σε σύγκριση με MariaDB. Βασίζεται σε λίγες μόνο δυνατότητες για βελτιστοποίηση ταχύτητας, για παράδειγμα, κατακερματισμένα ευρετήρια.
Ταχύτερη κρυφή μνήμη/ευρετήρια Με τη μηχανή αποθήκευσης μνήμης της MariaDB, μια δήλωση INSERT μπορεί να συμπληρωθεί κατά 24% από ό,τι στο πρότυπο MySQL. Η μηχανή αποθήκευσης μνήμης του MySQL είναι πιο αργή σε σύγκριση με αυτό MariaDB.
Μεγαλύτερη και ταχύτερη πισίνα σύνδεσης MariaDB συνοδεύεται από ένα προηγμένο thread pool ικανό να λειτουργεί πιο γρήγορα και να υποστηρίζει έως και 200,000+ συνδέσεις. Η πισίνα νημάτων που παρέχεται από MySQL δεν μπορεί να υποστηρίξει έως και 200,000 συνδέσεις κάθε φορά.
Βελτιωμένη αναπαραγωγή In MariaDB, η αναπαραγωγή μπορεί να γίνει ασφαλέστερα και ταχύτερα. Οι ενημερώσεις μπορούν επίσης να γίνουν 2 φορές πιο γρήγορα σε σύγκριση με τις παραδοσιακές MySQL. MySQLs comunity Η έκδοση επιτρέπει τη σύνδεση ενός στατικού αριθμού νημάτων. MySQLΤο επιχειρηματικό σχέδιο της εταιρείας συνοδεύεται από δυνατότητες νήματος.
Νέες δυνατότητες/Επεκτάσεις MariaDB έρχεται με νέες δυνατότητες και επεκτάσεις, συμπεριλαμβανομένων των δηλώσεων JSON, WITH και KILL. Το νέο MariaDB χαρακτηριστικά δεν παρέχονται στο MySQL.
Λείπει χαρακτηριστικά MariaDB στερείται ορισμένων από τις δυνατότητες που παρέχονται από το MySQL εταιρική έκδοση. Για να αντιμετωπιστεί αυτό, προσφέρει εναλλακτικές προσθήκες ανοιχτού κώδικα. Ως εκ τούτου, MariaDB οι χρήστες μπορούν να απολαμβάνουν τις ίδιες λειτουργίες με MySQL Χρήστες Enterprise Edition. Η Enterprise Edition του MySQL χρησιμοποιεί ιδιόκτητο κωδικό. Μόνο οι χρήστες του MySQL Η Enterprise Edition έχει πρόσβαση σε αυτό.

Πως να εγκαταστήσετε MariaDB

Εγκατάσταση ως αυτόνομη εφαρμογή

Για να χρησιμοποιήσετε MariaDB, πρέπει να το εγκαταστήσετε στον υπολογιστή σας.

Η εγκατάσταση μπορεί να γίνει με following τα βήματα που δίνονται παρακάτω:

Βήμα 1) Ανοίξτε το παρακάτω URL
Κατεβάστε το αρχείο εγκατάστασης από το Link https://downloads.mariadb.org/

Βήμα 2) Double κάντε κλικ στο αρχείο για να ξεκινήσει η εγκατάσταση
Μόλις ολοκληρωθεί η λήψη, ανοίξτε το αρχείο

Βήμα 3) Κάντε κλικ στο κουμπί Επόμενο
Στο παράθυρο που εμφανίζεται, κάντε κλικ στο κουμπί Επόμενο:

Εγκατάσταση MariaDB

Βήμα 4) Αποδεχτείτε τη συμφωνία άδειας χρήσης
Στη συνέχεια, κάντε κλικ στο κουμπί Επόμενο:

Εγκατάσταση MariaDB

Βήμα 5) Επιλέξτε MariaDB διακομιστή
Επιλέξτε τις λειτουργίες που πρόκειται να εγκατασταθούν και κάντε κλικ στο Επόμενο

Εγκατάσταση MariaDB

Βήμα 6) Πληκτρολογήστε τον κωδικό πρόσβασης
Στο επόμενο παράθυρο, θα σας ζητηθεί να αλλάξετε τον κωδικό πρόσβασης για τον χρήστη root.

  1. Εισαγάγετε τον κωδικό πρόσβασης και επιβεβαιώστε τον πληκτρολογώντας ξανά τον ίδιο κωδικό πρόσβασης. Εάν θέλετε να επιτρέψετε την πρόσβαση από απομακρυσμένα μηχανήματα, ενεργοποιήστε τον απαραίτητο έλεγχοbox.
  2. Μόλις τελειώσετε, κάντε κλικ στο κουμπί Επόμενο.

Εγκατάσταση MariaDB

Βήμα 7) Εισαγάγετε Όνομα και επιλέξτε Αριθμός θύρας
Στο επόμενο παράθυρο, πληκτρολογήστε ένα όνομα για το παράδειγμα, επιλέξτε τον αριθμό θύρας και ορίστε το απαραίτητο μέγεθος. Κάντε κλικ στο κουμπί Επόμενο:

Εγκατάσταση MariaDB

Βήμα 8) Κάντε κλικ στο κουμπί Επόμενο
Στο επόμενο παράθυρο, απλώς κάντε κλικ στο κουμπί Επόμενο.

Βήμα 9) Κάντε κλικ στο Εγκατάσταση
Ξεκινήστε την εγκατάσταση κάνοντας κλικ στο κουμπί Εγκατάσταση.

Εγκατάσταση MariaDB

Βήμα 10) Εμφανίζεται μια γραμμή προόδου
Ένα μπαρ προόδου showing θα εμφανιστεί η πρόοδος της εγκατάστασης:

Εγκατάσταση MariaDB

Βήμα 11) Κάντε κλικ στο κουμπί Τέλος
Μόλις ολοκληρωθεί η εγκατάσταση, θα δείτε το κουμπί Τέλος. Κάντε κλικ στο κουμπί για να κλείσετε το παράθυρο:

Εγκατάσταση MariaDB

Βήμα 12) Συγχαρητήρια!
Τώρα έχετε MariaDB εγκατεστημένο στον υπολογιστή σας.

Εργασία με τη γραμμή εντολών

Τώρα που έχετε MariaDB εγκατεστημένο στον υπολογιστή σας, είναι καιρός να το εκκινήσετε και να αρχίσετε να το χρησιμοποιείτε. Αυτό μπορεί να γίνει μέσω του MariaDB γραμμή εντολών.

Ακολουθήστε τα παρακάτω βήματα:

Βήμα 1) Κάντε κλικ στο Έναρξη, επιλέξτε Όλα τα προγράμματα και μετά κάντε κλικ MariaDB...

Βήμα 2) Επιλέξτε MariaDB Command Prompt.

MariaDB Γραμμή εντολών

Βήμα 3) Η MariaDB θα ξεκινήσει η γραμμή εντολών. Τώρα είναι ώρα να συνδεθείτε. Θα πρέπει να συνδεθείτε ως χρήστης root και ως κωδικός πρόσβασης που ορίσατε κατά την εγκατάσταση του MariaDB. Πληκτρολογήστε το following εντολή στη γραμμή εντολών:

MySQL -u root -p

Βήμα 4) Εισαγάγετε τον κωδικό πρόσβασης και πατήστε το πλήκτρο επιστροφής. Θα πρέπει να είστε συνδεδεμένοι, όπως φαίνεται παρακάτω:

MariaDB Γραμμή εντολών

Είστε πλέον συνδεδεμένοι MariaDB.

Τύποι δεδομένων

MariaDB υποστηρίζει το following τύποι δεδομένων:

  • Τύποι δεδομένων συμβολοσειράς
  • Αριθμητικοί τύποι δεδομένων
  • Τύποι δεδομένων ημερομηνίας/ώρας
  • Τύποι δεδομένων μεγάλων αντικειμένων

Τύποι δεδομένων συμβολοσειράς

Αυτά περιλαμβάνουν το following:

Τύπος δεδομένων συμβολοσειράς Περιγραφή
χαρακτήρες (μέγεθος) Το μέγεθος υποδηλώνει τον αριθμό των χαρακτήρων που πρέπει να αποθηκευτούν. Αποθηκεύει το πολύ 255 χαρακτήρες. Χορδές σταθερού μήκους.
varchar(μέγεθος) Το μέγεθος υποδηλώνει τον αριθμό των χαρακτήρων που πρέπει να αποθηκευτούν. Αποθηκεύει το πολύ 255 χαρακτήρες. Χορδές μεταβλητού μήκους.
μέγεθος κειμένου) Το μέγεθος υποδηλώνει τον αριθμό των χαρακτήρων που πρέπει να αποθηκευτούν. Αποθηκεύει το πολύ 255 χαρακτήρες. Χορδές σταθερού μήκους.
δυαδικό (μέγεθος) Το μέγεθος υποδηλώνει τον αριθμό των χαρακτήρων που πρέπει να αποθηκευτούν. Αποθηκεύει το πολύ 255 χαρακτήρες. Χορδές σταθερού μεγέθους.

Αριθμητικοί τύποι δεδομένων

Περιλαμβάνουν το following:

Αριθμητικοί τύποι δεδομένων Περιγραφή
κομμάτι Μια πολύ μικρή ακέραια τιμή ισοδύναμη με το tinyint(1). Οι τιμές με υπογραφή κυμαίνονται μεταξύ -128 και 127. Οι μη υπογεγραμμένες τιμές κυμαίνονται μεταξύ 0 και 255.
int(m) Μια τυπική ακέραια τιμή. Οι τιμές με υπογραφή κυμαίνονται μεταξύ -2147483648 και 2147483647. Οι μη υπογεγραμμένες τιμές κυμαίνονται μεταξύ 0 και 4294967295.
float (m, d) Ένας αριθμός κινητής υποδιαστολής με απλή ακρίβεια.
double(μ, δ) Ένας αριθμός κινητής υποδιαστολής με double ακρίβεια.
float(p) Ένας αριθμός κινητής υποδιαστολής.

Ημερομηνία/Ώρα Τύποι δεδομένων

Αυτά περιλαμβάνουν το following:

Ημερομηνία/Ώρα Τύπος δεδομένων Περιγραφή
Ημερομηνία Μετακίνησηyed με τη μορφή 'εεεε-μμ-ηη.' Οι τιμές κυμαίνονται μεταξύ "1000-01-01" και "9999-12-31".
Ημερομηνία ώρα Μετακίνησηyed με τη μορφή 'εεεε-μμ-ηη ωω:μ:δ'. Οι τιμές κυμαίνονται μεταξύ "1000-01-01 00:00:00" και "9999-12-31 23:59:59".
χρονική σήμανση (m) Μετακίνησηyed με τη μορφή 'εεεε-μμ-ηη ωω:μ:δ'. Οι τιμές κυμαίνονται μεταξύ '1970-01-01 00:00:01' utc και '2038-01-19 03:14:07' utc.
Χρόνος Μετακίνησηyed με τη μορφή «ωω:μμ:δς». Οι τιμές κυμαίνονται μεταξύ "-838:59:59" και "838:59:59".

Τύποι δεδομένων μεγάλων αντικειμένων (LOB)

Περιλαμβάνουν το following:

Τύπος δεδομένων μεγάλου αντικειμένου Περιγραφή
tinyblob Το μέγιστο μέγεθός του είναι 255 byte.
σταγόνα (μέγεθος) Λαμβάνει 65,535 byte ως μέγιστο μέγεθος.
mediumblob Το μέγιστο μέγεθός του είναι 16,777,215 byte.
μακρύ κείμενο Χρειάζονται 4 GB ως μέγιστο μέγεθος.

Δημιουργήστε μια βάση δεδομένων και πίνακες

Για να δημιουργήσετε μια νέα βάση δεδομένων στο MariaDB, θα πρέπει να έχετε ειδικά προνόμια τα οποία παραχωρούνται μόνο στον χρήστη root και στους διαχειριστές.

Για να δημιουργήσετε μια νέα βάση δεδομένων, θα πρέπει να χρησιμοποιήσετε την εντολή CREATE DATABASE που παίρνει το ακόλουθοwing σύνταξη:

CREATE DATABASE DatabaseName;

Σε αυτήν την περίπτωση, πρέπει να δημιουργήσετε μια βάση δεδομένων και να της δώσετε το όνομα Demo.

Ξεκινήστε το MariaDB γραμμή εντολών και συνδεθείτε ως χρήστης root πληκτρολογώντας το following εντολή:

mysql -u root -p

Πληκτρολογήστε τον κωδικό πρόσβασης root και πατήστε το κλειδί επιστροφής. Θα συνδεθείτε.

Τώρα, εκτελέστε το following εντολή:

CREATE DATABASE Demo;

Δημιουργήστε μια βάση δεδομένων και πίνακες στο MariaDB

Στη συνέχεια, δημιουργήσατε μια βάση δεδομένων με το όνομα Demo. Καλό θα είναι να επιβεβαιώσετε εάν η βάση δεδομένων δημιουργήθηκε με επιτυχία ή όχι. Πρέπει μόνο να εμφανίσετε τη λίστα με τις διαθέσιμες βάσεις δεδομένων εκτελώντας το following εντολή:

SHOW DATABASES;

Δημιουργήστε μια βάση δεδομένων και πίνακες στο MariaDB

Η παραπάνω έξοδος δείχνει ότι η βάση δεδομένων επίδειξης είναι μέρος της λίστας, επομένως η βάση δεδομένων δημιουργήθηκε με επιτυχία.

MariaDB Επιλέξτε Βάση δεδομένων

Για να μπορέσετε να χρησιμοποιήσετε ή να εργαστείτε σε μια συγκεκριμένη βάση δεδομένων, πρέπει να την επιλέξετε από τη λίστα των διαθέσιμων βάσεων δεδομένων. Αφού επιλέξετε μια βάση δεδομένων, μπορείτε να εκτελέσετε εργασίες όπως η δημιουργία πινάκων εντός της βάσης δεδομένων.

Για να επιλέξετε μια βάση δεδομένων, θα πρέπει να χρησιμοποιήσετε την εντολή USE. Παίρνει τη σύνταξη που δίνεται παρακάτω:

USE database_name;

Πρέπει να χρησιμοποιήσετε τη βάση δεδομένων επίδειξης. Μπορείτε να το επιλέξετε εκτελώντας το following εντολή:

USE Demo;

Δημιουργήστε μια βάση δεδομένων και πίνακες στο MariaDB

Η παραπάνω εικόνα δείχνει ότι το MariaDB Η γραμμή εντολών έχει αλλάξει από κανένα στο όνομα της βάσης δεδομένων που έχει επιλεγεί.

Τώρα μπορείτε να προχωρήσετε και να δημιουργήσετε πίνακες στη βάση δεδομένων επίδειξης.

MariaDB – Δημιουργία πίνακα

Για να μπορέσετε να δημιουργήσετε έναν πίνακα, πρέπει να έχετε επιλέξει μια βάση δεδομένων. Ο πίνακας μπορεί να δημιουργηθεί χρησιμοποιώντας την πρόταση CREATE TABLE. Εδώ είναι η σύνταξη για την εντολή:

CREATE TABLE tableName (columnName columnType);

Μπορείτε να ορίσετε μία από τις στήλες ως πρωτεύον κλειδί. Αυτή η στήλη δεν πρέπει να επιτρέπει μηδενικές τιμές.

Θα δημιουργήσουμε δύο πίνακες στη βάση δεδομένων επίδειξης, πίνακες Book και Price. Κάθε πίνακας θα έχει δύο στήλες.

Ας ξεκινήσουμε δημιουργώντας τον πίνακα Βιβλίο με δύο στήλες, το αναγνωριστικό και το όνομα. Εκτελέστε το following εντολή:

CREATE TABLE Book(  
id INT NOT NULL AUTO_INCREMENT,  
name VARCHAR(100) NOT NULL,  
PRIMARY KEY (id));  

Δημιουργήστε μια βάση δεδομένων και πίνακες στο MariaDB

Ο περιορισμός PRIMARY KEY έχει χρησιμοποιηθεί για να οριστεί η στήλη id ως πρωτεύον κλειδί για τον πίνακα. Η ιδιότητα AUTO_INCREMENT θα αυξήσει τις τιμές της στήλης id κατά 1 αυτόματα για κάθε νέα εγγραφή που εισάγεται στον πίνακα. Όλες οι στήλες δεν θα επιτρέπουν μηδενικές τιμές.

Τώρα, δημιουργήστε τον δεύτερο πίνακα, τον πίνακα τιμών:

CREATE TABLE Price(  
id INT NOT NULL AUTO_INCREMENT,  
price float NOT NULL,  
PRIMARY KEY (id));  

Δημιουργήστε μια βάση δεδομένων και πίνακες στο MariaDB

Η στήλη id έχει οριστεί ως το πρωτεύον κλειδί για τον πίνακα.

Showing πίνακες

Τώρα που έχετε δημιουργήσει τους δύο πίνακες, καλό θα είναι να συμμορφωθείτε εάν οι πίνακες δημιουργήθηκαν με επιτυχία ή όχι. Μπορείτε να εμφανίσετε τη λίστα των πινάκων που περιέχονται σε μια βάση δεδομένων εκτελώντας το following εντολή:

SHOW TABLES;

Δημιουργήστε μια βάση δεδομένων και πίνακες στο MariaDB

Το παραπάνω στιγμιότυπο οθόνης δείχνει ότι οι δύο πίνακες δημιουργήθηκαν με επιτυχία στη βάση δεδομένων επίδειξης.

Showing Δομή πίνακα

Για να δείτε τη δομή οποιουδήποτε συγκεκριμένου πίνακα, μπορείτε να χρησιμοποιήσετε την εντολή DESCRIBE, που συνήθως συντομεύεται ως DESC. Χρειάζεται το following σύνταξη:

DESC TableName;

Για παράδειγμα, για να δείτε τη δομή του πίνακα με το όνομα Book, μπορείτε να εκτελέσετε το following εντολή;

DESC Book;

Δημιουργήστε μια βάση δεδομένων και πίνακες στο MariaDB

Ο πίνακας έχει δύο στήλες. Για να δείτε τη δομή του πίνακα Price, μπορείτε να εκτελέσετε το following εντολή:

DESC Price;

Δημιουργήστε μια βάση δεδομένων και πίνακες στο MariaDB

CRUD και ρήτρες

ΕΝΘΕΤΟ

Για να εισαγάγετε δεδομένα σε α MariaDB πίνακα, θα πρέπει να χρησιμοποιήσετε την πρόταση INSERT INTO. Αυτή η εντολή παίρνει τη σύνταξη που δίνεται παρακάτω:

INSERT INTO tableName
(column_1, column_2, ... )  
VALUES  
(value1, value2, ... ),  
(value1, value2, ... ),  
...;   

Η παραπάνω σύνταξη δείχνει ότι πρέπει να καθορίσετε τις στήλες του πίνακα στις οποίες θέλετε να εισαγάγετε δεδομένα καθώς και τα δεδομένα που πρέπει να εισαγάγετε.

Ας εισάγουμε μια εγγραφή στον πίνακα του Βιβλίου:

INSERT INTO book  
(id, name)  
VALUES(1, 'MariaDB Book');  

CRUD και Clauses-INSERT

Έχετε εισαγάγει μία μόνο εγγραφή στον πίνακα. Εισαγάγετε μια εγγραφή στον πίνακα τιμών:

INSERT INTO price
(id, price)  
VALUES(1, 200);  

CRUD και Clauses-INSERT

Ο δίσκος έχει δημιουργηθεί.

SELECT

Η δήλωση SELECT μας βοηθά να προβάλουμε ή να δούμε τα περιεχόμενα ενός πίνακα βάσης δεδομένων. Για να δείτε τα περιεχόμενα του πίνακα Βιβλίο, για παράδειγμα, πρέπει να εκτελέσετε το following εντολή:

SELECT * from book;

CRUD και Clauses-INSERT

Τώρα, δείτε τα περιεχόμενα του πίνακα τιμών:

SELECT * from price;

CRUD και Clauses-INSERT

Εισαγωγή πολλαπλών εγγραφών

Είναι δυνατόν να εισάγουμε πολλαπλές εγγραφές στο α MariaDB τραπέζι εν κινήσει. Για να το αποδείξετε αυτό, εκτελέστε το following παράδειγμα:

INSERT INTO book
(id, name)  
VALUES  
(2,'MariaDB Book2'),  
(3,'MariaDB Book3'),  
(4,'MariaDB Book4'),  
(5,'MariaDB Book5');

Εισαγωγή πολλαπλών εγγραφών

Μπορείτε να κάνετε ερώτημα στον πίνακα για να ελέγξετε εάν οι εγγραφές εισήχθησαν με επιτυχία:

SELECT * FROM book;

Εισαγωγή πολλαπλών εγγραφών

Οι εγγραφές εισήχθησαν με επιτυχία. Εισαγάγετε πολλαπλές εγγραφές στον πίνακα τιμών εκτελώντας αυτό το παράδειγμα:

INSERT INTO price 
(id, price)  
VALUES  
(2, 250),  
(3, 220),  
(4, 190),  
(5, 300); 

Εισαγωγή πολλαπλών εγγραφών

Ας επιβεβαιώσουμε εάν οι εγγραφές δημιουργήθηκαν με επιτυχία:

SELECT * FROM price;

Εισαγωγή πολλαπλών εγγραφών

ΕΚΣΥΓΧΡΟΝΊΖΩ

Η εντολή UPDATE μας βοηθά να αλλάξουμε ή να τροποποιήσουμε τις εγγραφές που έχουν ήδη εισαχθεί σε έναν πίνακα. Μπορείτε να το συνδυάσετε με την ρήτρα WHERE για να καθορίσετε την εγγραφή που πρόκειται να ενημερωθεί. Εδώ είναι η σύνταξη:

UPDATE tableName SET field=newValue, field2=newValue2,...  
[WHERE ...]  

Η εντολή UPDATE μπορεί επίσης να συνδυαστεί με ρήτρες όπως SET, WHERE, LIMIT και ORDER BY. Θα το δείτε σύντομα:

Σκεφτείτε τον πίνακα με το όνομα Τιμή με το ακόλουθοwing εγγραφές:

CRUD και Clauses-UPDATE

Ας αλλάξουμε την τιμή του βιβλίου με αναγνωριστικό 1 από 200 σε 250:

UPDATE price 
SET price = 250
WHERE id = 1;

CRUD και Clauses-UPDATE

Η εντολή εκτελέστηκε με επιτυχία. Τώρα μπορείτε να υποβάλετε ερώτημα στον πίνακα για να δείτε εάν πραγματοποιήθηκε η αλλαγή:

CRUD και Clauses-UPDATE

Το παραπάνω στιγμιότυπο οθόνης δείχνει ότι η αλλαγή έχει εφαρμοστεί. Σκεφτείτε τον πίνακα Βιβλίο με το following εγγραφές:

CRUD και Clauses-UPDATE

Ας αλλάξουμε το όνομα του βιβλίου με το όνομα Βιβλίο σε MariaDB Βιβλίο 1. Παρατηρήστε ότι το βιβλίο έχει αναγνωριστικό 1. Ακολουθεί η εντολή για αυτό:

UPDATE book
SET name = “MariaDB Book1”
WHERE id = 1;

CRUD και Clauses-UPDATE

Ελέγξτε εάν η αλλαγή έχει εφαρμοστεί:

CRUD και Clauses-UPDATE

Το παραπάνω στιγμιότυπο οθόνης δείχνει ότι η αλλαγή εφαρμόστηκε με επιτυχία.

Στα παραπάνω παραδείγματα, έχουμε αλλάξει μόνο μία στήλη κάθε φορά. Ωστόσο, είναι δυνατό για εμάς να αλλάξουμε πολλές στήλες κάθε φορά. Ας το δείξουμε αυτό χρησιμοποιώντας ένα παράδειγμα.

Ας χρησιμοποιήσουμε τον πίνακα τιμών με το ακόλουθοwing δεδομένα:

CRUD και Clauses-UPDATE

Ας αλλάξουμε και το id και την τιμή του βιβλίου με αναγνωριστικό 5. Θα αλλάξουμε το αναγνωριστικό του σε 6 και την τιμή σε 6. Εκτελέστε το following εντολή:

UPDATE price
SET id = 6,
price = 280
WHERE id = 5;

CRUD και Clauses-UPDATE

Τώρα, υποβάλετε ερώτημα στον πίνακα για να ελέγξετε εάν η αλλαγή έγινε με επιτυχία:

CRUD και Clauses-UPDATE

Η αλλαγή έγινε με επιτυχία.

Διαγραφή

Χρησιμοποιούμε την εντολή DELETE όταν χρειάζεται να διαγράψουμε είτε μία είτε πολλές εγγραφές από έναν πίνακα. Εδώ είναι η σύνταξη για την εντολή:

DELETE FROM tableName  
[WHERE condition(s)]  
[ORDER BY exp [ ASC | DESC ]]  
[LIMIT numberRows];   

Εξετάστε τον πίνακα τιμών με το ακόλουθοwing εγγραφές:

CRUD και Clauses-DELETE

Πρέπει να διαγράψουμε την τελευταία εγγραφή από τον πίνακα. Έχει αναγνωριστικό 6 και τιμή 280. Ας διαγράψουμε την εγγραφή:

DELETE FROM price
WHERE id = 6;   

CRUD και Clauses-DELETE

Η εντολή εκτελέστηκε με επιτυχία. Ας ρωτήσουμε τον πίνακα για να επιβεβαιώσουμε εάν η διαγραφή ήταν επιτυχής:

CRUD και Clauses-DELETE

Η έξοδος δείχνει ότι η εγγραφή διαγράφηκε με επιτυχία.

Πού

Η ρήτρα WHERE μας βοηθά να καθορίσουμε την ακριβή τοποθεσία όπου πρέπει να κάνουμε μια αλλαγή. Χρησιμοποιείται μαζί με δηλώσεις όπως INSERT, SELECT, UPDATE και DELETE. Εξετάστε τον πίνακα τιμών με το ακόλουθοwing δεδομένα:

CRUD και Clauses-Where

Ας υποθέσουμε ότι πρέπει να δούμε τα αρχεία στα οποία η τιμή είναι μικρότερη από 250. Μπορούμε να εκτελέσουμε το following εντολή:

SELECT *   
FROM price 
WHERE price < 250;  

CRUD και Clauses-Where

Επιστράφηκαν όλοι οι δίσκοι στους οποίους η τιμή είναι κάτω από 250.

Η ρήτρα WHERE μπορεί να συνδυαστεί με την πρόταση AND. Ας υποθέσουμε ότι πρέπει να δούμε όλες τις εγγραφές στον πίνακα Τιμή όπου η τιμή είναι κάτω από 250 και το αναγνωριστικό είναι πάνω από 3. Μπορούμε να εκτελέσουμε το ακόλουθοwing εντολή:

SELECT *  
FROM price  
WHERE id > 3  
AND price < 250;   

CRUD και Clauses-Where

Μόνο ένας δίσκος επιστράφηκε. Ο λόγος είναι ότι πρέπει να πληροί όλες τις προϋποθέσεις που έχουν καθοριστεί, δηλαδή id πάνω από 3 και τιμή κάτω από 250. Εάν παραβιαστεί κάποια από αυτές τις προϋποθέσεις, τότε η εγγραφή δεν θα επιστραφεί.

Η ρήτρα μπορεί επίσης να συνδυαστεί με την εντολή OR. Ας αντικαταστήσουμε το AND στην προηγούμενη εντολή μας με το OR και ας δούμε το είδος της εξόδου που λαμβάνουμε:

SELECT *  
FROM price 
WHERE id > 3  
OR price < 250;   

CRUD και Clauses-Where

Τώρα παίρνουμε 2 ρεκόρ αντί για 1. Αυτό συμβαίνει επειδή, για ένα ρεκόρ πρόκρισης, πρέπει να πληροί μόνο μία από τις καθορισμένες προϋποθέσεις.

Αρέσει

Αυτή η ρήτρα χρησιμοποιείται για τον καθορισμό του μοτίβου δεδομένων κατά την πρόσβαση σε δεδομένα πίνακα στα οποία απαιτείται ακριβής αντιστοίχιση. Μπορεί να συνδυαστεί με τις δηλώσεις INSERT, UPDATE, SELECT και DELETE.

Θα πρέπει να μεταβιβάσετε το μοτίβο των δεδομένων που αναζητάτε στην ρήτρα και θα επιστρέψει είτε true είτε false. Ακολουθούν οι χαρακτήρες μπαλαντέρ που μπορούν να χρησιμοποιηθούν μαζί με την ρήτρα:

  • %: για αντιστοίχιση 0 ή περισσότερων χαρακτήρων.
  • _: για αντιστοίχιση ενός μεμονωμένου χαρακτήρα.

Εδώ είναι η σύνταξη για την πρόταση LIKE:

SELECT field_1, field_2,... FROM tableName1, tableName2,...  
WHERE fieldName LIKE condition;

Ας δείξουμε πώς να χρησιμοποιήσετε τη ρήτρα με τον χαρακτήρα μπαλαντέρ %. Ας χρησιμοποιήσουμε τον πίνακα Βιβλίο με το following εγγραφές:

CRUD και Clauses-Where

Πρέπει να δούμε όλες τις εγγραφές στις οποίες το όνομα αρχίζει με M. Μπορούμε να εκτελέσουμε το following εντολή:

SELECT name  
FROM book  
WHERE name LIKE 'M%';  

CRUD και Clauses-Where

Όλες οι εγγραφές έχουν επιστραφεί επειδή τα ονόματά τους ξεκινούν με το γράμμα M. Για να δείτε όλα τα ονόματα που τελειώνουν σε 4, μπορείτε να εκτελέσετε το ακόλουθοwing εντολή:

SELECT name  
FROM book  
WHERE name LIKE '%4';  

CRUD και Clauses-Where

Μόνο ένα όνομα έχει επιστραφεί επειδή είναι το μόνο που πληροί την προϋπόθεση.

Μπορούμε επίσης να περιβάλουμε το μοτίβο αναζήτησης με τον χαρακτήρα μπαλαντέρ:

SELECT name  
FROM book  
WHERE name LIKE '%DB%';  

CRUD και Clauses-Where

Εκτός από τον χαρακτήρα μπαλαντέρ %, η ρήτρα LIKE μπορεί να χρησιμοποιηθεί μαζί με τον χαρακτήρα μπαλαντέρ _. Αυτός είναι ο χαρακτήρας μπαλαντέρ υπογράμμισης και θα αναζητήσει μόνο έναν χαρακτήρα.

Ας δουλέψουμε με τον πίνακα Price με το following εγγραφές:

CRUD και Clauses-Where

Ας ελέγξουμε για το ρεκόρ στο οποίο η τιμή είναι σαν 1_0. Τρέχουμε το following εντολή:

SELECT *  
FROM price
WHERE price LIKE '1_0';  

CRUD και Clauses-Where

Έχει επιστρέψει το ρεκόρ στο οποίο η τιμή είναι 190. Μπορούμε επίσης να δοκιμάσουμε ένα άλλο μοτίβο:

SELECT *  
FROM price 
WHERE price LIKE '_2_';  

CRUD και Clauses-Where

Είναι δυνατόν να χρησιμοποιήσουμε την ρήτρα LIKE μαζί με την ΟΧΙ operaβραχώδης κορυφή. Αυτό θα επιστρέψει όλες τις εγγραφές που δεν πληρούν το καθορισμένο μοτίβο. Για παράδειγμα:

Ας χρησιμοποιήσουμε τον πίνακα τιμών με το ακόλουθοwing εγγραφές:

CRUD και Clauses-Where

Ας βρούμε όλες τις εγγραφές όπου η τιμή δεν ξεκινά με 2:

SELECT *  
FROM price  
WHERE price NOT LIKE '2%';  

CRUD και Clauses-Where

Μόνο μία εγγραφή δεν πληροί το καθορισμένο μοτίβο.

Ταξινόμηση

Αυτή η ρήτρα μας βοηθά να ταξινομήσουμε τα αρχεία μας με αύξουσα ή φθίνουσα σειρά. Το χρησιμοποιούμε με την πρόταση SELECT, όπως φαίνεται παρακάτω:

SELECT expression(s)  
FROM tables  
[WHERE condition(s)]  
ORDER BY exp [ ASC | DESC ];   

Είναι δυνατό για εμάς να χρησιμοποιήσουμε αυτόν τον όρο χωρίς να προσθέσουμε το τμήμα ASC ή DESC. Για παράδειγμα:

Θα χρησιμοποιήσουμε τον πίνακα Τιμών με το ακόλουθοwing εγγραφές:

CRUD και Clauses-Where

Εκτελέστε το following εντολή ενάντια στον πίνακα:

SELECT * FROM price 
WHERE price LIKE '2%.'
ORDER BY price;   

CRUD και Clauses-Where

Στην παραπάνω εντολή, έχουμε παραγγείλει με βάση την τιμή. Τα ρεκόρ έχουν παραγγελθεί με τις τιμές σε αύξουσα σειρά. Αυτό σημαίνει ότι όταν δεν καθορίζουμε τη σειρά, η ταξινόμηση γίνεται με αύξουσα σειρά από προεπιλογή.

Ας εκτελέσουμε τον όρο με την επιλογή DESC:

SELECT * FROM price
WHERE price LIKE '2%'  
ORDER BY price DESC;   

CRUD και Clauses-Where

Οι εγγραφές έχουν ταξινομηθεί με την τιμή σε φθίνουσα σειρά όπως έχουμε καθορίσει.

Ας χρησιμοποιήσουμε τον όρο ORDER BY μαζί με το χαρακτηριστικό ASC:

SELECT * FROM price 
WHERE price LIKE '2%.'  
ORDER BY price ASC;   

CRUD και Clauses-Where

Οι δίσκοι έχουν παραγγελθεί αλλά με τις τιμές σε αύξουσα σειρά. Αυτό είναι παρόμοιο με όταν χρησιμοποιούμε τον όρο ORDER BY χωρίς χαρακτηριστικά ASC ή DESC.

ΔΙΑΦΟΡΕΤΙΚΕΣ

Αυτή η ρήτρα μας βοηθά να καταργήσουμε τα διπλότυπα όταν επιλέγουμε εγγραφές από έναν πίνακα. Αυτό σημαίνει ότι μας βοηθά να αποκτήσουμε μοναδικούς δίσκους. Η σύνταξή του δίνεται παρακάτω:

SELECT DISTINCT expression(s)  
FROM tableName  
[WHERE condition(s)];   

Για να το αποδείξουμε αυτό, θα χρησιμοποιήσουμε τον πίνακα Τιμή με το ακόλουθοwing δεδομένα:

CRUD και Clauses-DISTINCT

Όταν επιλέγουμε τη στήλη τιμής από τον πίνακα, παίρνουμε το ακόλουθοwing αποτέλεσμα:

SELECT price FROM Price;

CRUD και Clauses-DISTINCT

Έχουμε δύο δίσκους με τιμή 250, δημιουργώντας ένα διπλότυπο. Πρέπει να έχουμε μόνο μοναδικούς δίσκους. Μπορούμε να τα φιλτράρουμε χρησιμοποιώντας την ρήτρα DISTINCT όπως φαίνεται παρακάτω:

SELECT DISTINCT price FROM Price;

CRUD και Clauses-DISTINCT

Τώρα δεν έχουμε διπλότυπα στην παραπάνω έξοδο.

Από

Ο όρος FROM που χρησιμοποιείται για την ανάκτηση δεδομένων από έναν πίνακα βάσης δεδομένων. Μπορεί επίσης να βοηθήσει όταν ενώνετε τραπέζια. Εδώ είναι η σύνταξη για την εντολή:

SELECT columnNames FROM tableName; 

Για να δείτε τα περιεχόμενα του πίνακα βιβλίων, εκτελέστε το following εντολή:

SELECT * FROM price;

CRUD και ρήτρες-Από

Η ρήτρα μπορεί να σας βοηθήσει να λάβετε μόνο μία στήλη από έναν πίνακα βάσης δεδομένων. Για παράδειγμα:

SELECT price FROM Price;

CRUD και ρήτρες-Από

Προηγμένες εργασίες

Αποθηκευμένη διαδικασία

Μια διαδικασία είναι α MariaDB πρόγραμμα στο οποίο μπορείτε να μεταβιβάσετε παραμέτρους. Μια διαδικασία δεν επιστρέφει τιμές. Για να δημιουργήσουμε μια διαδικασία, χρησιμοποιούμε την εντολή CREATE PROCEDURE.

Για να δείξουμε πώς να δημιουργήσουμε και να καλέσουμε μια διαδικασία, θα δημιουργήσουμε μια διαδικασία με το όνομα myProcedure() που μας βοηθά να επιλέξουμε τη στήλη ονόματος από τον πίνακα βιβλίου. Εδώ είναι η διαδικασία:

DELIMITER $
    CREATE PROCEDURE myProcedure()
        BEGIN
            SELECT name FROM book;
        END;
;

Προηγμένες εργασίες-αποθηκευμένη διαδικασία

Η διαδικασία έχει δημιουργηθεί. Έχουμε απλώς επισυνάψει τη δήλωση SELECT στις ρήτρες BEGIN και END της διαδικασίας.

Τώρα, μπορούμε να ονομάσουμε τη διαδικασία με το όνομά της όπως φαίνεται παρακάτω:

CALL myProcedure();

Προηγμένες εργασίες-αποθηκευμένη διαδικασία

Η διαδικασία επιστρέφει τη στήλη ονόματος του πίνακα βιβλίου όταν καλείται.

Μπορούμε να δημιουργήσουμε μια διαδικασία που παίρνει μια παράμετρο. Για παράδειγμα, πρέπει να επιλέξουμε το όνομα του βιβλίου και να φιλτράρουμε χρησιμοποιώντας το αναγνωριστικό βιβλίου. Μπορούμε να δημιουργήσουμε το following διαδικασία για αυτό:

DELIMITER $
    CREATE PROCEDURE myProcedure2(book_id int)
        BEGIN
            SELECT name FROM book WHERE id = book_id;
        END;
;

Προηγμένες εργασίες-αποθηκευμένη διαδικασία

Παραπάνω, δημιουργήσαμε μια διαδικασία με το όνομα myProcedure2(). Αυτή η διαδικασία παίρνει μια ακέραια παράμετρο με το όνομα book_id που είναι το id του βιβλίου του οποίου το όνομα πρέπει να δούμε. Για να δούμε το όνομα του βιβλίου με αναγνωριστικό 3, μπορούμε να καλέσουμε τη διαδικασία ως εξής:

CALL myProcedure2(3);

Προηγμένες εργασίες-αποθηκευμένη διαδικασία

Λειτουργία

Σε αντίθεση με τις διαδικασίες, πρέπει να περάσουμε παραμέτρους στις συναρτήσεις και μια συνάρτηση πρέπει να επιστρέψει μια τιμή. Για να δημιουργήσετε μια συνάρτηση στο MariaDB, χρησιμοποιούμε την πρόταση CREATE FUNCTION. Η δήλωση ακολουθεί τη συνέχειαwing σύνταξη:

CREATE 
[ DEFINER = { CURRENT-USER | username } ] 
FUNCTION function-name [(parameter datatype [, parameter datatype]) ]
RETURNS datatype [LANGUAGE SQL
                        | DETERMINISTIC
                        | NOT DETERMINISTIC
                        | {CONTAINS SQL 
                          | NO SQL
                          | READS SQL DATA
                          | MODIFIES SQL DATA}
                        | SQL SECURITY {DEFINER | INVOKER}
                        | COMMENT 'comment'

BEGIN

   declaration-section

   executable-section

END;

Οι παραπάνω παράμετροι περιγράφονται παρακάτω:

Παράμετρος Περιγραφή
Ρήτρα DEFINER Αυτή η παράμετρος είναι προαιρετική. Εάν δεν το καθορίσετε, ο οριστής θα γίνει ο χρήστης που δημιούργησε τη συνάρτηση. Εάν υπάρχει ανάγκη να ορίσετε διαφορετικό οριστή, συμπεριλάβετε την ρήτρα DEFINER στην οποία το user_name θα είναι ο οριστής της συνάρτησης.
όνομα_λειτουργίας Το όνομα που πρόκειται να εκχωρηθεί σε αυτή τη λειτουργία στο MariaDB.
παράμετρος Οι παράμετροι μεταβιβάστηκαν στη συνάρτηση. Κατά τη δημιουργία της συνάρτησης, όλες οι παράμετροι αντιμετωπίζονται ως IN παραμέτρους (αντί για τις παραμέτρους OUT/INOUT).
επιστροφή_τύπος δεδομένων Ο τύπος δεδομένων της επιστρεφόμενης τιμής της συνάρτησης.
ΓΛΩΣΣΑ SQL Επηρεάζει τη φορητότητα αλλά όχι τη λειτουργία.
ΑΠΟΔΟΤΙΚΟΣ Η συνάρτηση θα επιστρέψει ένα αποτέλεσμα μόνο όταν δοθεί ένας αριθμός παραμέτρων.
ΟΧΙ ΝΤΕΤΕΜΙΝΙΣΤΙΚΟ Είναι δυνατό για τη συνάρτηση να επιστρέψει διαφορετικό αποτέλεσμα όταν δίνεται ένας αριθμός παραμέτρων.
ΠΕΡΙΕΧΕΙ SQL Ενημερώνει MariaDB ότι αυτή η συνάρτηση περιέχει SQL. Η βάση δεδομένων δεν θα επαληθεύσει εάν αυτό είναι αλήθεια.
ΟΧΙ SQL Αυτή η ρήτρα δεν χρησιμοποιείται και δεν έχει καμία επίδραση στη λειτουργία σας.
ΔΙΑΒΑΖΕΙ ΔΕΔΟΜΕΝΑ SQL Λέει MariaDB ότι αυτή η συνάρτηση θα χρησιμοποιεί δηλώσεις SELECT για την ανάγνωση δεδομένων, αλλά δεν θα τροποποιεί τα δεδομένα.
ΤΡΟΠΟΠΟΙΕΙ ΔΕΔΟΜΕΝΑ SQL Λέει MariaDB ότι αυτή η λειτουργία θα χρησιμοποιεί INSERT, DELETE, UPDATE και άλλα DDL δηλώσεις για την τροποποίηση δεδομένων SQL.
δήλωση-τμήμα Εδώ πρέπει να δηλωθούν οι τοπικές μεταβλητές.
εκτελέσιμο-τμήμα Ο κωδικός λειτουργίας πρέπει να προστεθεί εδώ.

Εδώ είναι ένα παράδειγμα MariaDB λειτουργία:

DELIMITER //

CREATE FUNCTION sumFunc (x INT )
RETURNS INT DETERMINISTIC

BEGIN

   DECLARE sum INT;
   SET sum = 0;
   label1: WHILE sum <= 3000 DO
   SET sum = sum + x;
   END WHILE label1;
   RETURN sum;
END; //
DELIMITER ;

Λειτουργία σε MariaDB

Τότε μπορούμε να καλέσουμε την παραπάνω συνάρτηση ως εξής:

select sumFunc(1000);

Η εντολή θα επιστρέψει το ακόλουθοwing:

Λειτουργία σε MariaDB

Μόλις τελειώσετε με μια συνάρτηση, καλό θα είναι να τη διαγράψετε. Αυτό είναι εύκολο καθώς πρέπει να καλέσετε μόνο τη δήλωση DROP FUNCTION που παίρνει το following σύνταξη:

DROP FUNCTION function_name;

Για παράδειγμα, για να ρίξουμε τη συνάρτηση με το όνομα myFunc, μπορούμε να εκτελέσουμε το following εντολή:

DROP FUNCTION myFunc;

Ενώνω

Όταν χρειάζεται να ανακτήσετε δεδομένα από περισσότερους από έναν πίνακες κάθε φορά, χρησιμοποιήστε το MariaDB ΕΝΩΝΕΙ. Αυτό σημαίνει ότι α Ενώνω λειτουργεί σε δύο ή περισσότερα τραπέζια. Το Following υποστηρίζονται τρεις τύποι JOINS MariaDB:

  • ΕΣΩΤΕΡΙΚΗ/ΑΠΛΗ ΕΝΩΣΗ
  • ΑΡΙΣΤΕΡΑ ΕΞΩΤΕΡΙΚΗ ΣΥΝΔΕΣΗ/ΑΡΙΣΤΕΡΑ ΣΥΝΔΕΣΗ
  • ΔΕΞΙΑ ΕΞΩΤΕΡΙΚΗ ΣΥΝΔΕΣΗ/ΔΕΞΙΑ ΣΥΝΔΕΣΗ

Ας τα συζητήσουμε ένα προς ένα:

ΕΣΩΤΕΡΙΚΗ ΣΥΝΔΕΣΗ

Η εσωτερική ένωση επιστρέφει όλες τις σειρές από τους πίνακες στους οποίους η συνθήκη σύνδεσης είναι αληθής. Η σύνταξή του είναι η εξής:

SELECT columns  
FROM table-1   
INNER JOIN table-2  
ON table-1.column = table-2.column;  

Για παράδειγμα:

Θα χρησιμοποιήσουμε τα δύο τραπέζια, τα βιβλία και το βιβλίο μας.

Ο πίνακας του βιβλίου έχει το ακόλουθοwing δεδομένα:

ΕΣΩΤΕΡΙΚΗ ΣΥΝΔΕΣΗ

Ο πίνακας τιμών έχει το ακόλουθοwing δεδομένα:

ΕΣΩΤΕΡΙΚΗ ΣΥΝΔΕΣΗ

Ο στόχος είναι να ενώσετε τη στήλη ονόματος από τον πίνακα Βιβλίο και τη στήλη τιμής από τον πίνακα Τιμή σε έναν ενιαίο πίνακα. Αυτό είναι δυνατό με μια εσωτερική ένωση, όπως φαίνεται παρακάτω:

SELECT book.name, price.price 
FROM book   
INNER JOIN price 
ON book.id = price.id;   

Η εντολή επιστρέφει το ακόλουθοwing:

ΕΣΩΤΕΡΙΚΗ ΣΥΝΔΕΣΗ

ΑΡΙΣΤΕΡΑ ΕΞΩΤΕΡΙΚΗ ΣΥΝΔΕΣΗ

Αυτή η ένωση επιστρέφει όλες τις σειρές από τον αριστερό πίνακα και μόνο τις γραμμές στις οποίες η συνθήκη σύνδεσης είναι αληθής από τον άλλο πίνακα. Η σύνταξή του είναι η εξής:

SELECT columns  
FROM table-1  
LEFT [OUTER] JOIN table-2  
ON table-1.column = table-2.column;  

Η λέξη-κλειδί OUTER έχει τοποθετηθεί εντός τετραγώνου brackets γιατί είναι προαιρετικό.

Για παράδειγμα:

SELECT book.name, price.price 
FROM book   
LEFT JOIN price 
ON book.id = price.id;   

Η εντολή επιστρέφει το ακόλουθοwing:

ΑΡΙΣΤΕΡΑ ΕΞΩΤΕΡΙΚΗ ΣΥΝΔΕΣΗ

Η τελευταία εγγραφή στον παραπάνω πίνακα δεν έχει αντίστοιχη τιμή στα αριστερά. Γι' αυτό έχει αντικατασταθεί με NULL.

ΔΕΞΙΑ ΕΞΩΤΕΡΙΚΗ ΣΥΝΔΕΣΗ

Αυτή η ένωση επιστρέφει όλες τις σειρές από τον δεξιό πίνακα και μόνο τις γραμμές στις οποίες η συνθήκη σύνδεσης είναι αληθής από τον άλλο πίνακα. Η σύνταξή του είναι η εξής:

SELECT columns  
FROM table-1  
RIGHT [OUTER] JOIN table-2  
ON table-1.column = table-2.column;  

Η λέξη-κλειδί OUTER έχει τοποθετηθεί εντός τετραγώνου brackets γιατί είναι προαιρετικό.

Για παράδειγμα:

SELECT book.name, price.price 
FROM book   
RIGHT JOIN price
ON book.id = price.id;   

Η εντολή επιστρέφει το ακόλουθοwing:

ΔΕΞΙΑ ΕΞΩΤΕΡΙΚΗ ΣΥΝΔΕΣΗ

Ο λόγος είναι ότι όλες οι σειρές στον δεξιό πίνακα αντιστοιχίστηκαν με αυτές του άλλου πίνακα. Εάν μερικές από τις σειρές δεν ταιριάζουν, θα είχαμε NULL στην πρώτη στήλη.