20 Συχνές ερωτήσεις και απαντήσεις για συνέντευξη SQL [2022]

Η δομημένη γλώσσα ερωτημάτων (SQL) είναι η τυπική γλώσσα προγραμματισμού που χρησιμοποιείται από τους διαχειριστές βάσεων δεδομένων και τους αναλυτές δεδομένων για την υποβολή ερωτημάτων σε βάσεις δεδομένων. Χρησιμοποιείται ευρέως στις γλώσσες προγραμματισμού ιστότοπων, εφαρμογών και άλλων πλατφορμών.

Χρησιμοποιείται για την πρόσβαση και το χειρισμό δεδομένων σε μια βάση δεδομένων, συμπεριλαμβανομένης της δημιουργίας και τροποποίησης πινάκων και στηλών και αναζήτησης δεδομένων χρησιμοποιώντας εντολές SQL.

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

Πίνακας περιεχομένων

Ποιες είναι οι βασικές εντολές SQL;

Μερικές από τις πιο σημαντικές εντολές SQL είναι:

  • SELECT – εξάγει δεδομένα από μια βάση δεδομένων.
  • CREATE TABLE – δημιουργεί έναν νέο πίνακα.
  • DELETE – διαγράφει δεδομένα από μια βάση δεδομένων.
  • INSERT INTO – εισάγει νέα δεδομένα σε μια βάση δεδομένων.
  • ALTER DATABASE – τροποποιεί μια βάση δεδομένων.
  • CREATE DATABASE – δημιουργεί μια νέα βάση δεδομένων.
  • ΕΝΗΜΕΡΩΣΗ – ενημερώνει τα δεδομένα σε μια βάση δεδομένων.

Ποιες είναι οι τέσσερις σημαντικές δηλώσεις SQL;

Οι κύριες δηλώσεις SQL χωρίζονται σε αυτές τις κατηγορίες:

  • Δηλώσεις γλώσσας ορισμού δεδομένων (DDL).
  • Δηλώσεις γλώσσας χειρισμού δεδομένων (DML).
  • Δηλώσεις γλώσσας ελέγχου δεδομένων (DCL).
  • Δηλώσεις γλώσσας ελέγχου συναλλαγών (TCL).

Ποια είναι η σημασία του πρωτεύοντος κλειδιού στην SQL;

Ένα πρωτεύον κλειδί είναι μια στήλη (ή σύνολο στηλών) που επιτρέπει σε κάθε γραμμή σε μια βάση δεδομένων να προσδιορίζεται μοναδικά. Οι βάσεις δεδομένων SQL δίνουν μεγάλη σημασία στα πρωτεύοντα κλειδιά. Παρέχουν κάθε σειρά σε έναν πίνακα βάσης δεδομένων με ένα μοναδικό αναγνωριστικό. Ένα πρωτεύον κλειδί μπορεί να αποτελείται από ένα ή περισσότερα πεδία και μπορεί να υπάρχει μόνο ένα πρωτεύον κλειδί ανά πίνακα.

Τι είναι οι τύποι δεδομένων SQL;

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

  Εκτελέστε Classic Games στον υπολογιστή σας με αυτούς τους 6 εξομοιωτές

Στην SQL, οι τύποι δεδομένων κατηγοριοποιούνται στις ακόλουθες ομάδες:

  • Ακριβείς αριθμοί
  • Αριθμητικά κατά προσέγγιση
  • Ημερομηνία και ώρα
  • Χορδές χαρακτήρων
  • Συμβολοσειρές χαρακτήρων Unicode
  • Δυαδικές χορδές

Πού αποθηκεύονται τα ονόματα χρήστη και οι κωδικοί πρόσβασης στον SQL Server;

Τα ονόματα χρηστών και οι κωδικοί πρόσβασης αποθηκεύονται στις αρχές sys.server και στις συνδέσεις sys.sql του πίνακα SQL, αντίστοιχα. Οι κωδικοί πρόσβασης δεν αποθηκεύονται σε κανονικό κείμενο.

Τι είναι η ένεση SQL;

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

Τι είναι ένα έναυσμα στην SQL και οι τύποι του;

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

Υπάρχουν τρεις τύποι ενεργοποίησης – LOGON, DDL και DML.

  • Ενεργοποιητές LOGON: Αυτοί οι κανόνες ενεργοποιούνται όταν ένας χρήστης ξεκινά ένα συμβάν Logon.
  • Οι ενεργοποιήσεις DDL ενεργοποιούνται κάθε φορά που εκδίδεται μια εντολή DDL όπως CREATE, ALTER ή DROP.
  • Ενεργοποιητές DML: Ενεργοποιούνται κάθε φορά που μια εντολή DML τροποποιεί δεδομένα. Συγκρίσιμο με το INSERT, UPDATE και DELETE

Πώς θα διακρίνατε τις συναρτήσεις μονής και πολλαπλών σειρών;

Μια μεμονωμένη γραμμή σε έναν πίνακα μπορεί να επηρεαστεί από συναρτήσεις μιας γραμμής ταυτόχρονα. Εκτελούν μια σειρά και μετά δίνουν μόνο ένα αποτέλεσμα. Είναι γνωστό ότι οι μετατροπές μήκους και πεζών-κεφαλαίων είναι συναρτήσεις μιας σειράς.

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

Τι είναι η κανονικοποίηση βάσεων δεδομένων και ποιοι είναι οι τέσσερις κύριοι τύποι της στην SQL;

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

Οι τέσσερις τύποι διαδικασιών κανονικοποίησης της βάσης δεδομένων είναι οι εξής:

  • Πρώτη κανονική φόρμα (1 NF)
  • Δεύτερη κανονική φόρμα (2 NF)
  • Τρίτη κανονική φόρμα (3 NF)
  • Boyce Codd Normal Form ή Τέταρτη Κανονική Μορφή (BCNF ή 4 NF)

Τι είναι τα ευρετήρια και οι περιορισμοί στην SQL;

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

  Τι είναι μια τηλεόραση Mini-LED και γιατί θα θέλατε;

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

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

Ποιοι είναι οι συνήθως χρησιμοποιούμενοι περιορισμοί SQL;

Οι περιορισμοί SQL που χρησιμοποιούνται συνήθως είναι:

  • ΔΗΜΙΟΥΡΓΙΑ ΕΥΡΕΤΗΡΙΟΥ: Αυτή η εντολή διασφαλίζει ότι δημιουργούνται ευρετήρια για πίνακες, έτσι ώστε η ανάκτηση δεδομένων να γίνεται πιο απλή.
  • ΞΕΝΟ ΚΛΕΙΔΙ: Το ξένο κλειδί ενός πίνακα πρέπει να συνδέει πίνακες με παρόμοια χαρακτηριστικά.
  • DEFAULT: Εάν δεν παρέχεται τιμή για τα πεδία μιας στήλης, παρέχει μια προεπιλεγμένη τιμή για αυτά τα πεδία.
  • ΜΟΝΑΔΙΚΟ: Αυτό καθορίζει ότι κάθε τιμή σε μια στήλη πρέπει να είναι ξεχωριστή.
  • ΚΥΡΙΑ ΚΛΕΙΔΙ: Το πρωτεύον κλειδί ενός πίνακα πρέπει να προσδιορίζει κάθε σειρά.
  • NOT NULL: Αυτή η συνθήκη διασφαλίζει ότι οι τιμές NULL δεν γίνονται αποδεκτές από στήλες.
  • ΕΛΕΓΧΟΣ: Διασφαλίζει ότι κάθε πεδίο στήλης συμμορφώνεται με μια προκαθορισμένη απαίτηση.

Είναι το NULL ίσο με 0 στην SQL;

Μια τιμή NULL στην SQL υποδηλώνει μια τιμή που δεν είναι διαθέσιμη ή έχει εκχωρηθεί. Ένα διάστημα (‘ ‘) ή μηδέν (0) δεν είναι ισοδύναμα με την τιμή NULL. Δεν μπορείτε να συγκρίνετε την τιμή NULL με οποιαδήποτε άλλη τιμή χρησιμοποιώντας τελεστές σύγκρισης όπως “=” ή”>”, καθώς δεν μπορεί να είναι ίση ή άνιση με οποιαδήποτε άλλη τιμή.

Πώς να αποτρέψετε επιθέσεις SQL injection;

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

Τι είναι το Dynamic SQL και πότε μπορείτε να το χρησιμοποιήσετε;

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

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

Ποιοι είναι οι διαφορετικοί τύποι κλειδιών στην SQL;

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

  25 καλύτερες δωρεάν εφαρμογές Video Cutter

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

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

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

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

Ποιοι είναι οι τύποι ευρετηρίων στην SQL;

Οι παρακάτω είναι τύποι ευρετηρίων σε SQL

  • Ευρετήριο κατακερματισμού
  • βελτιστοποιημένη για μνήμη Μη ομαδοποιημένη
  • Ομαδοποιημένος δείκτης
  • Μη ομαδοποιημένος δείκτης
  • Μοναδικό ευρετήριο
  • Ευρετήριο καταστήματος στήλης
  • Ευρετήριο με συμπεριλαμβανόμενες στήλες
  • Ευρετήριο σε υπολογισμένες στήλες
  • Φιλτραρισμένο ευρετήριο
  • Χωρικός δείκτης
  • Ευρετήριο XML
  • Ευρετήριο πλήρους κειμένου

Τι εννοείτε με τον όρο buffer pool και αναφέρετε τα οφέλη της;

Στην SQL, ένα buffer pool αναφέρεται επίσης ως buffer cache. Ένα buffer pool μπορεί να χρησιμοποιηθεί από όλους τους πόρους για την αποθήκευση των αποθηκευμένων σελίδων δεδομένων τους. Κατά τη ρύθμιση μιας παρουσίας του SQL Server, μπορεί να καθοριστεί το μέγεθος του buffer pool. Το μέγεθος ενός buffer pool καθορίζει πόσες σελίδες μπορεί να χωρέσει.

Τα ακόλουθα είναι τα πλεονεκτήματα ενός buffer pool:

  • Βελτιώσεις στην απόδοση I/O
  • Αύξηση απόδοσης συναλλαγών
  • Μείωση καθυστέρησης εισόδου/εξόδου
  • Βελτίωση της απόδοσης στην ανάγνωση

Τι εννοείτε με τον όρο εξάρτηση και αναφέρετε τις διαφορετικές εξαρτήσεις;

Όταν ένα αντικείμενο αναφέρεται με όνομα σε μια δήλωση SQL που διατηρείται σε ένα άλλο αντικείμενο, δημιουργείται μια εξάρτηση μεταξύ των δύο αντικειμένων. Ο όρος “αναφερόμενη οντότητα” αναφέρεται σε ένα αντικείμενο που εμφανίζεται σε μια έκφραση SQL, ενώ ο όρος “οντότητα αναφοράς” αναφέρεται σε ένα αντικείμενο που περιέχει μια έκφραση SQL.

Ακολουθούν οι διαφορετικοί τύποι εξαρτήσεων στην SQL.

  • Λειτουργική εξάρτηση
  • Πλήρως λειτουργική εξάρτηση
  • Πολυτιμή εξάρτηση
  • Μεταβατική εξάρτηση
  • Μερική εξάρτηση

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

Υπάρχουν τέσσερις κύριοι τύποι JOIN στην SQL: ΕΣΩΤΕΡΙΚΗ ΣΥΝΔΕΣΗ, ΕΞΩΤΕΡΙΚΗ ΣΥΝΔΕΣΗ, CROSS JOIN και SELF JOIN.

Ποιοι είναι οι τελεστές συνόλου στην SQL;

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

συμπέρασμα

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

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

Για να αποκτήσετε πρακτική εμπειρία με την εκτέλεση ερωτημάτων SQL, ελέγξτε αυτές τις πλατφόρμες πρακτικής SQL.