Η συμβολοσειρά SQL είναι ίση

E Symboloseira Sql Einai Ise



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

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

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







Η συμβολοσειρά SQL ισούται με τη σύνταξη

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



Το παρακάτω δείχνει τη σύνταξη της πρότασης:



ΕΠΙΛΟΓΗ στήλη1, στήλη 2, ...
FROM table_name
WHERE στήλη_όνομα = 'τιμή';

Σε αυτήν την περίπτωση, το 'column_name' αντιπροσωπεύει τη στήλη που θέλουμε να συγκρίνουμε, ενώ η τιμή αναφέρεται στην κυριολεκτική συμβολοσειρά με την οποία θέλουμε να τη συγκρίνουμε.





Αυτό χρησιμοποιεί τον τελεστή ισότητας που ελέγχει εάν οι παρεχόμενες συμβολοσειρές είναι ίσες.

Δειγμα δεδομένων

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



Εξετάστε τον πίνακα παραδείγματος και τα δείγματα δεδομένων όπως φαίνεται στα παρακάτω:

ΔΗΜΙΟΥΡΓΗΣΤΕ ΤΡΑΠΕΖΑ υπαλλήλους (
υπάλληλος_αναγνωριστικό INT PRIMARY KEY AUTO_INCREMENT,
όνομα_εργαζομένου VARCHAR(100),
Department_id INT
)


INSERT INTO εργαζομένων (Employee_name, Department_id) VALUES
('Phelps Dane', 101),
('Alana L', 102),
('E Johnson', 103),
('Daniel B', 104),
('Break Davis', 105),
('Jessica Wilson', 106),
('Daniel Garcia', 107),
('Karen Martinez', 108),
('Anthony Robinson', 109),
('Sophia Clark', 110);

Αυτό θα πρέπει να δημιουργήσει έναν πίνακα και να προσθέσει τα δείγματα εγγραφών στον πίνακα.

Παράδειγμα 1: Βασική χρήση

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

ΕΠΙΛΟΓΗ *
ΑΠΟ εργαζομένους
WHERE staff_name = 'Karen Martinez';

Στο συγκεκριμένο ερώτημα, επιλέγουμε όλες τις στήλες από τον πίνακα 'εργαζόμενοι' όπου η στήλη 'όνομα_υπάλληλου' είναι ίση με 'Karen Martinez'.

Η έξοδος που προκύπτει είναι η εξής:

υπάλληλος_αναγνωριστικό|όνομα_υπαλλήλου |αναγνωριστικό_τμήματος|
-----------+----------------------------+
8|Karen Martinez| 108 |

Παράδειγμα 2: Σύγκριση συμβολοσειρών με διάκριση πεζών-κεφαλαίων

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

Για να αναγκάσετε ρητά τη βάση δεδομένων να εκτελέσει μια σύγκριση με διάκριση πεζών-κεφαλαίων, μπορείτε να χρησιμοποιήσετε τη λέξη-κλειδί ΔΥΑΔΙΚΟ ως εξής:

ΕΠΙΛΟΓΗ *
ΑΠΟ εργαζομένους
WHERE BINARY υπάλληλο_όνομα = 'Karen martinez';

Σε αυτήν την περίπτωση, δεδομένου ότι η παρεχόμενη συμβολοσειρά περιέχει το πεζό M στο όνομα Martinez, η βάση δεδομένων θα την αντιμετωπίσει ως διαφορετική συμβολοσειρά. Ως εκ τούτου, δεν υπάρχει αποτέλεσμα.

Παράδειγμα 3: Χρήση των χαρακτήρων μπαλαντέρ

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

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

Για παράδειγμα, μπορούμε να χρησιμοποιήσουμε τους χαρακτήρες μπαλαντέρ όπως '%' (ταιριάζει με οποιαδήποτε ακολουθία χαρακτήρων) και '_' (ταιριάζει με οποιονδήποτε μεμονωμένο χαρακτήρα) σε συνδυασμό με συμβολοσειρά ίσο.

Ας δούμε ένα παράδειγμα ως εξής:

ΕΠΙΛΟΓΗ *
ΑΠΟ εργαζομένους ε
WHERE υπάλληλος_όνομα LIKE 'A%';

Αυτό το ερώτημα ανακτά όλους τους υπαλλήλους των οποίων τα ονόματα ξεκινούν με το γράμμα 'A'.

Παράδειγμα 4: Αποδράστε από τους ειδικούς χαρακτήρες

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

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

ΕΠΙΛΟΓΗ *
ΑΠΟ προϊόντα
WHERE product_name = 'Τα γλυκά μήλα';

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

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

ΕΠΙΛΟΓΗ *
ΑΠΟ προϊόντα
WHERE product_name = 'Γλυκά\\ Μήλα';

Αυτό θα πρέπει να περιλαμβάνει μια ανάστροφη κάθετο στη συμβολοσειρά κυριολεκτικά.

συμπέρασμα

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