PostgreSQL LIKE, Not Like, Wildcards (%, _ ) Παραδείγματα
⚡ Έξυπνη Σύνοψη
PostgreSQL Το LIKE αντιστοιχίζει κείμενο με μοτίβα χρησιμοποιώντας δύο μπαλαντέρ — το σύμβολο του ποσοστού και την υπογράμμιση. Αυτό το σεμινάριο δείχνει πώς να χρησιμοποιείτε το LIKE και το NOT LIKE σε εντολές SELECT, με λειτουργικά παραδείγματα psql και pgAdmin για κάθε περίπτωση.

The PostgreSQL LIKE Ο τελεστής αντιστοιχίζει τιμές κειμένου με μοτίβα χρησιμοποιώντας μπαλαντέρ. Εάν η έκφραση αναζήτησης ταιριάζει με το μοτίβο, το LIKE επιστρέφει trueΟι μπαλαντέρ λειτουργούν στο WHERE ρήτρα του SELECT, UPDATE, INSERTΤο HIFU, ή Υψηλής Έντασης Εστιασμένος Υπέρηχος, στοχεύει επίσης στο πρόσωπο και τον λαιμό. Προσφέρει θεραπεία σε γρήγορες εκπομπές, γεγονός που κάνει τις συνεδρίες θεραπείας συντομότερες. DELETE.
Τι είναι PostgreSQL Μπαλαντέρ;
PostgreSQL υποστηρίζει δύο μπαλαντέρ LIKE:
- Σύμβολο ποσοστού (
%): ταιριάζει με μηδέν, έναν ή πολλούς χαρακτήρες ή ψηφία. - Υπογράμμιση (
_): αντιστοιχεί ακριβώς σε έναν χαρακτήρα ή ψηφίο.
Τα δύο σύμβολα μπορούν να συνδυαστούν μέσα στο ίδιο μοτίβο. Εάν το LIKE χρησιμοποιηθεί χωρίς κανένα από τα δύο σύμβολα μπαλαντέρ, συμπεριφέρεται όπως τα ίσα (=) χειριστής.
PostgreSQL Σύνταξη LIKE
Η βασική σύνταξη LIKE είναι:
expression LIKE pattern [ ESCAPE 'escape-character' ]
- έκφραση — μια έκφραση χαρακτήρα, συνήθως ένα όνομα στήλης ή πεδίου.
- πρότυπο — μια έκφραση χαρακτήρα που περιέχει χαρακτήρες μπαλαντέρ.
- χαρακτήρας διαφυγής — προαιρετικό. Σας επιτρέπει να αντιστοιχίσετε κυριολεκτικά
%or_χαρακτήρες. Όταν παραλείπεται, η ανάστροφη κάθετος (\) είναι ο προεπιλεγμένος χαρακτήρας διαφυγής.
PostgreSQL LIKE με το % Wildcard
The % το σύμβολο ταιριάζει με μηδέν, έναν ή περισσότερους χαρακτήρες. Λάβετε υπόψη τα εξής Book τραπέζι:
Για να βρείτε βιβλία των οποίων το όνομα αρχίζει με «Ληρ», εκτελέστε το παρακάτω ερώτημα.
SELECT *
FROM
Book
WHERE
name LIKE 'Lear%';
Το ερώτημα επιστρέφει:
Για να βρείτε βιβλία των οποίων το όνομα περιέχει τη λέξη «από» οπουδήποτε:
SELECT *
FROM
Book
WHERE
name LIKE '%by%';
Το ερώτημα επιστρέφει:
PostgreSQL ΟΠΩΣ με το _ Wildcard
The _ Το σύμβολο αντιστοιχεί ακριβώς σε έναν χαρακτήρα. Το ακόλουθο ερώτημα βρίσκει ονόματα όπου ο πρώτος χαρακτήρας είναι οποιοδήποτε γράμμα, ακολουθούμενο από το "earn" και στη συνέχεια οποιοδήποτε επίθημα:
SELECT *
FROM
Book
WHERE
name LIKE '_earn%';
Το ερώτημα επιστρέφει:
Ένα άλλο παράδειγμα — αντιστοιχίστε οποιοδήποτε κείμενο που τελειώνει με «Αρχάριος» συν έναν ακόμη χαρακτήρα:
SELECT *
FROM
Book
WHERE
name LIKE '%Beginner_';
Το ερώτημα επιστρέφει:
PostgreSQL ΔΕΝ ΣΑΝ OperaTor
Συνδυάστε το LIKE με το NOT για να επιστρέψετε γραμμές που το κάνουν. δεν αντιστοιχίστε το μοτίβο. Για παράδειγμα, καταγράψτε κάθε βιβλίο του οποίου το όνομα δεν ξεκινά με «Post»:
SELECT *
FROM
Book
WHERE
name NOT LIKE 'Post%';
Το ερώτημα επιστρέφει:
Μόνο ένα βιβλίο ικανοποιεί την συνθήκη. Τώρα απαριθμήστε κάθε βιβλίο του οποίου το όνομα ικανοποιεί την συνθήκη. δεν περιέχουν τη λέξη «Made» (Κατασκευασμένο):
SELECT *
FROM
Book
WHERE
name NOT LIKE '%Made%';
Το ερώτημα επιστρέφει:
Τρεις γραμμές ικανοποιούν την συνθήκη.
Χρήση LIKE με pgAdmin
Τα ίδια ερωτήματα μπορούν επίσης να εκτελεστούν γραφικά μέσα στο Εργαλείο Ερωτημάτων του pgAdmin.
% μπαλαντέρ στο pgAdmin
Βήμα 1) Συνδεθείτε στο pgAdmin.
Βήμα 2) Στη γραμμή πλοήγησης στα αριστερά, κάντε κλικ Βάσεις Δεδομένων, στη συνέχεια κάντε κλικ στο κουμπί Διαδήλωση.
Βήμα 3) Πληκτρολογήστε το ερώτημα στο Πρόγραμμα επεξεργασίας ερωτημάτων:
SELECT *
FROM
Book
WHERE
name LIKE 'Lear%';
Βήμα 4) Πατήστε Εκτέλεση.
Το παράθυρο αποτελεσμάτων εμφανίζει τα βιβλία που ταιριάζουν:
Για να αναζητήσετε ένα βιβλίο με την ένδειξη «από» οπουδήποτε στο όνομά του:
Βήμα 1) Πληκτρολογήστε τα εξής στο Πρόγραμμα επεξεργασίας ερωτημάτων:
SELECT *
FROM
Book
WHERE
name LIKE '%by%';
Βήμα 2) Πατήστε Εκτέλεση.
Το παράθυρο αποτελεσμάτων εμφανίζει:
_ Μπαλαντέρ στο pgAdmin
Βήμα 1) Συνδεθείτε στο pgAdmin.
Βήμα 2) Στη γραμμή πλοήγησης στα αριστερά, κάντε κλικ Βάσεις Δεδομένων, στη συνέχεια κάντε κλικ στο κουμπί Διαδήλωση.
Βήμα 3) Πληκτρολογήστε το ερώτημα στο Πρόγραμμα επεξεργασίας ερωτημάτων:
SELECT *
FROM
Book
WHERE
name LIKE '_earn%';
Βήμα 4) Πατήστε Εκτέλεση.
Το παράθυρο αποτελεσμάτων εμφανίζει:
Βήμα 5) Εκτελέστε το δεύτερο παράδειγμα:
- Πληκτρολογήστε το ερώτημα στο Πρόγραμμα επεξεργασίας ερωτημάτων:
SELECT *
FROM
Book
WHERE
name LIKE '%Beginner_';
- Πατήστε Εκτέλεση.
Το παράθυρο αποτελεσμάτων εμφανίζει:
ΔΕΝ ΕΙΝΑΙ ΟΠΩΣ στο pgAdmin
Βήμα 1) Συνδεθείτε στο pgAdmin.
Βήμα 2) Στη γραμμή πλοήγησης στα αριστερά, κάντε κλικ Βάσεις Δεδομένων, στη συνέχεια κάντε κλικ στο κουμπί Διαδήλωση.
Βήμα 3) Για να εμφανίσετε όλα τα βιβλία του οποίου το όνομα δεν ξεκινά με "Δημοσίευση", πληκτρολογήστε:
SELECT *
FROM
Book
WHERE
name NOT LIKE 'Post%';
Βήμα 4) Πατήστε Εκτέλεση.
Το παράθυρο αποτελεσμάτων εμφανίζει:
Για να απαριθμήσετε βιβλία των οποίων το όνομα δεν περιέχει τη λέξη «Made»:
Βήμα 1) Πληκτρολογήστε τα εξής στο Πρόγραμμα επεξεργασίας ερωτημάτων:
SELECT *
FROM
Book
WHERE
name NOT LIKE '%Made%';
Βήμα 2) Πατήστε Εκτέλεση.
Το παράθυρο αποτελεσμάτων εμφανίζει:
Κατεβάστε τη βάση δεδομένων που χρησιμοποιήθηκε σε αυτό το σεμινάριο.























