Κοινή χρήση τεχνολογίας

Λεπτομερής επεξήγηση της δήλωσης Mysql και εμφάνιση παραδείγματος

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Πρώτα, εισάγετε εν συντομία το sql:

Η γλώσσα SQL χωρίζεται σε τέσσερις κατηγορίες: γλώσσα ερωτημάτων δεδομένων DQL, γλώσσα χειρισμού δεδομένων DML, γλώσσα ορισμού δεδομένων DDL και γλώσσα ελέγχου δεδομένων DCL.

1. Data Query Language DQL
Η βασική δομή της γλώσσας ερωτημάτων δεδομένων DQL είναι ένα μπλοκ ερωτήματος που αποτελείται από ρήτρα SELECT, όρος FROM και όρος WHERE: SELECT <πίνακας ονόματος πεδίου> FROM <όνομα πίνακα ή προβολής> WHERE <συνθήκες ερωτήματος>

2. Γλώσσα χειρισμού δεδομένων DML
Υπάρχουν τρεις κύριες μορφές DML γλώσσας χειρισμού δεδομένων:
1) Εισαγωγή: INSERT
2) Ενημέρωση: ΕΝΗΜΕΡΩΣΗ
3) Διαγραφή: ΔΙΑΓΡΑΦΗ

3. Γλώσσα ορισμού δεδομένων DDL
Η γλώσσα ορισμού δεδομένων DDL χρησιμοποιείται για τη δημιουργία διαφόρων αντικειμένων στη βάση δεδομένων ----- πίνακες, προβολές, ευρετήρια, συνώνυμα, συμπλέγματα, κ.λπ., όπως: ΔΗΜΙΟΥΡΓΙΑ ΠΙΝΑΚΑ / ΠΡΟΒΟΛΗ / ΕΥΡΕΤΗΡΙΟ / SYN / ΣΥΣΤΗΜΑ συνωνύμων ευρετηρίου προβολής πίνακα . Οι λειτουργίες DDL υποβάλλονται σιωπηρά! Δεν είναι δυνατή η επαναφορά

4. Γλώσσα ελέγχου δεδομένων DCL
Η γλώσσα ελέγχου δεδομένων DCL χρησιμοποιείται για τη χορήγηση ή την ανάκληση ορισμένων δικαιωμάτων πρόσβασης στη βάση δεδομένων, τον έλεγχο του χρόνου και των αποτελεσμάτων των συναλλαγών χειρισμού της βάσης δεδομένων και την παρακολούθηση της βάσης δεδομένων. αρέσει:
1) ΧΟΡΗΓΗΣΗ: Εξουσιοδότηση.
2) ΕΠΙΤΡΟΠΗ [ΕΡΓΑΣΙΑ] ΣΤΟ [ΣΗΜΕΙΟ ΑΠΟΘΗΚΕΥΣΗΣ]: Επαναφορά σε ένα συγκεκριμένο σημείο. Επαναφορά --- ROLLBACK Η εντολή επαναφοράς επιστρέφει την κατάσταση της βάσης δεδομένων στην τελευταία κατάσταση που υποβλήθηκε. Η μορφή του είναι: SQL>ROLLBACK;
3) ΔΕΣΜΕΥΣΗ [ΕΡΓΑΣΙΑ]: Υποβολή. Κατά τις λειτουργίες εισαγωγής, διαγραφής και τροποποίησης της βάσης δεδομένων, η συναλλαγή ολοκληρώνεται μόνο όταν υποβληθεί στη βάση δεδομένων. Πριν από τη δέσμευση της συναλλαγής, μόνο το άτομο που χειρίζεται τη βάση δεδομένων έχει το δικαίωμα να δει τι έχει γίνει.

Σχετικά με τις δηλώσεις εξουσιοδότησης

Εντολή εξουσιοδότησης βάσης δεδομένων:

ΧΟΡΗΓΗΣΤΕ <άδεια> στο όνομα του πίνακα (ή στο όνομα της στήλης) στον χρήστη

Επιλογή σωστής απάντησης Β: εισαγωγή, επιλογή: όνομα πίνακα αδειών: χρήστης χρήστη: nkw

Συμπληρωματικά σημεία γνώσης-άδειες ανακύκλωσης

ΑΝΑΚΛΗΣΗ <άδειας> στο όνομα του πίνακα (ή στο όνομα της στήλης) ΑΠΟ χρήστη

Εξηγήστε την εισαγωγή της δήλωσης

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

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

Τι πληροφορίες μπορώ να δω;

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

Εισαγωγή βασικής σύνταξης

  1. EXPLAIN SELECT select具体语句
  2. 如:
  3. EXPLAIN SELECT * FROM userpro

εξηγήστε τη λειτουργία κάθε στήλης

ΛίσταπεριγράφωΑναπληρώ
ταυτότηταΚάθε λέξη-κλειδί SELECT αντιστοιχεί σε ένα αναγνωριστικό

select_type

Τύπος ερωτήματος που αντιστοιχεί στη λέξη-κλειδί SELECT
τραπέζιΌνομα πίνακα
χωρίσματαΑντιστοίχιση πληροφοριών διαμερίσματος
τύποςΜέθοδος πρόσβασης για μεμονωμένο τραπέζι
πιθανά_κλειδιάΠιθανά ευρετήρια
κλειδίπραγματικός δείκτης που χρησιμοποιείται
key_lenΤο πραγματικό μήκος του δείκτη που χρησιμοποιείται
αναφΌταν χρησιμοποιείτε το ερώτημα ισοδυναμίας στήλης ευρετηρίου, οι πληροφορίες αντικειμένου που αντιστοιχούν στη στήλη ευρετηρίου για ισοδυναμία.
σειρέςΕκτιμώμενος αριθμός εγγραφών προς ανάγνωση
φιλτραρισμένοΠοσοστό υπολειπόμενων εγγραφών μετά το φιλτράρισμα με κριτήρια αναζήτησης

    

Επιπλέον

επιπλέον πληροφορία

               

Αναλυτική εισαγωγή σε κάθε στήλη του EXPLAIN

1, id

Κάθε λέξη-κλειδί SELECT αντιστοιχεί σε ένα αναγνωριστικό

Όσο μεγαλύτερη είναι η τιμή id, τόσο μεγαλύτερη είναι η προτεραιότητα και θα εκτελεστεί πρώτη.

Εάν τα αναγνωριστικά είναι τα ίδια, μπορούν να θεωρηθούν ως ομάδα και να εκτελεστούν διαδοχικά από πάνω προς τα κάτω.

Κάθε αριθμός ID αντιπροσωπεύει ένα ανεξάρτητο ερώτημα Όσο λιγότερος είναι ο αριθμός των ερωτημάτων σε μια πρόταση SQL, τόσο το καλύτερο.

2, Select_type

κατηγορίαεικονογραφώ
ΑΠΛΟΣΕρώτημα μεμονωμένου πίνακα, χωρίς υποερώτημα ή ερώτημα UNION.
ΠΡΩΤΑΡΧΙΚΟΣΗ πιο εξωτερική πρόταση SELECT στο ερώτημα.
ΥΠΟΕΡΩΤΗΣΗΈνα δευτερεύον ερώτημα χρησιμοποιείται στον όρο WHERE.
ΣΥΜΠΛΗΡΩΜΑΤΙΚΟΣΓια υποερωτήματα που περιέχονται στον όρο FROM, η MySQL θα το επισημάνει ως DERIVED (προερχόμενο) και θα δημιουργήσει έναν προσωρινό πίνακα για τα αποτελέσματά του που θα χρησιμοποιηθούν από το εξωτερικό ερώτημα.
ΕΝΩΣΗΗ δεύτερη και οι επόμενες δηλώσεις ερωτήματος σε ένα ερώτημα UNION.
ΑΠΟΤΕΛΕΣΜΑ ΕΝΩΣΗΣΤο σύνολο αποτελεσμάτων ενός ερωτήματος UNION.
ΕΞΑΡΤΗΜΑ ΥΠΟΕΡΩΤΗΣΗΤο αποτέλεσμα του δευτερεύοντος ερωτήματος εξαρτάται από την τιμή του εξωτερικού ερωτήματος και το υποερώτημα εκτελείται μία φορά για κάθε σειρά στο εξωτερικό ερώτημα.
ΕΞΑΡΤΗΜΕΝΟ ΣΥΝΔΕΣΜΟΗ δεύτερη και οι επόμενες δηλώσεις ερωτήματος ενός ερωτήματος UNION και τα αποτελέσματα εξαρτώνται από την τιμή του εξωτερικού ερωτήματος
ΑΠΑΡΑΞΕΙΣΤΟ ΥΠΟΕΡΩΤΗΣΗΤο υποερώτημα δεν μπορεί να αποθηκευτεί προσωρινά και θα εκτελείται κάθε φορά που γίνεται αναφορά.

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

4. χωρίσματα (προαιρετικά)

5. πληκτρολογήστε ☆

Οι συνήθεις τύποι είναι οι εξής

τύποςεικονογραφώ
ΣύστημαΥπάρχει μόνο μία σειρά στον πίνακα, συνήθως SELECT ... FROM DUAL Βελτιστοποίηση ερωτημάτων.
συνθΤο ερώτημα βρίσκεται μέσω του ευρετηρίου μία φορά, με μία μόνο σειρά αποτελεσμάτων (σταθερός πίνακας).
eq_refΧρησιμοποιήστε ένα μοναδικό ευρετήριο ή πρωτεύον κλειδί για να βρείτε μια σειρά από έναν άλλο πίνακα.
αναφΧρησιμοποιήστε ένα μη μοναδικό ευρετήριο για να βρείτε μία ή περισσότερες σειρές από έναν άλλο πίνακα.
εύροςΕπιστρέψτε ένα εύρος σειρών χρησιμοποιώντας ένα ευρετήριο.
δείκτηςΣαρώνει πλήρως το ευρετήριο για να βρει σειρές αντί να σαρώσει ολόκληρο τον πίνακα.
όλαΜια πλήρης σάρωση πίνακα ελέγχει κάθε σειρά του πίνακα.

Γενικά, προσπαθήστε να τα αποφύγετε όλα

6, κλειδί και πιθανά_κλειδιά

  1. κλειδί

    • key Το πεδίο δείχνει το πραγματικό ευρετήριο που χρησιμοποιείται από το ερώτημα.Αν η τιμή αυτού του πεδίου είναιNULL , υποδεικνύοντας ότι δεν χρησιμοποιείται ευρετήριο. Εάν αυτό το πεδίο έχει τιμή, σημαίνει ότι η MySQL χρησιμοποίησε το καθορισμένο ευρετήριο για να εκτελέσει το ερώτημα.
  2. πιθανά_κλειδιά

    • possible_keys Το πεδίο εμφανίζει τη λίστα των ευρετηρίων που μπορεί να χρησιμοποιήσει η MySQL. Αυτά τα ευρετήρια είναι ευρετήρια που μπορούν να ληφθούν υπόψη σε ερωτήματα, αλλά μπορεί να μην χρησιμοποιηθούν στην πραγματικότητα. συνήθως,possible_keys Τα ευρετήρια που παρατίθενται στο καθορίζονται με βάση τις συνθήκες του ερωτήματος και τη δομή του πίνακα.
  • αν key Ένα πεδίο έχει ένα όνομα ευρετηρίου καιpossible_keys Τα ονόματα πολλών ευρετηρίων παρατίθενται στο , υποδεικνύοντας ότι η MySQL έχει επιλέξειkey Το ευρετήριο στο οποίο παρατίθεται το πεδίο χρησιμοποιείται για την εκτέλεση του ερωτήματος, ενώ τα άλλα ευρετήρια παρατίθενται στοpossible_keys Η Medium είπε ότι θα μπορούσε επίσης να εξεταστεί, αλλά τελικά δεν χρησιμοποιήθηκε.

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

7, κλειδί_λεν

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

  1. Ευρετήριο μονής στήλης

    • Εάν χρησιμοποιείται ευρετήριο μίας στήλης και ο τύπος στήλης είναι σταθερό μήκος (π.χ. INT),αλλά key_len Η τιμή είναι το μήκος της στήλης.
    • Εάν χρησιμοποιούνται πεδία μεταβλητού μήκους (π.χ. VARCHAR),αλλά key_len Η τιμή του είναι το μέγιστο μήκος του πεδίου.
  2. σύνθετος δείκτης

    • Για σύνθετα ευρετήρια (δηλαδή ευρετήρια που περιέχουν πολλές στήλες),key_len Αντιπροσωπεύει το συνολικό μήκος όλων των στηλών του ευρετηρίου.
  3. συνδυασμένος δείκτης

    • Εάν ένα συνδυασμένο ευρετήριο σε πολλές στήλες χρησιμοποιείται στο ερώτημα,key_len είναι το συνολικό μήκος όλων των στηλών στο συνδυασμένο ευρετήριο.
  4. πρόθεμα ευρετηρίου

    • Σε ορισμένες περιπτώσεις, η MySQL μπορεί να χρησιμοποιεί μόνο ένα τμήμα του ευρετηρίου. Για παράδειγμα, μπορείτε να χρησιμοποιήσετε το πρόθεμα του ευρετηρίου ως μέρος του ευρετηρίου για να εκτελέσετε ένα ερώτημα. σε αυτήν την περίπτωση,key_len Θα εμφανιστεί το πραγματικό μήκος του τμήματος ευρετηρίου που χρησιμοποιείται.

8, αναφ

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

9, σειρές

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

  • για απλο SELECT Ρωτώ,rows Αντιπροσωπεύει τον εκτιμώμενο αριθμό σειρών προς επιστροφή.
  • Για ερωτήματα συμμετοχής (JOIN) ή υποερώτημα,rows Μπορεί να αντιπροσωπεύει τον αριθμό των σειρών στις οποίες προσπελάστηκε κατά τη λειτουργία σύνδεσης.
  • Για σάρωση πίνακα (πλήρης σάρωση πίνακα ή σάρωση ευρετηρίου),rows Μπορεί να αντιπροσωπεύει τον αριθμό των σειρών που σαρώθηκαν.

10, φιλτραρισμένο

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

πότε filtered Όταν είναι κοντά στο 100%, σημαίνει ότι οι συνθήκες του ερωτήματος έχουν ουσιαστικά φιλτράρει τις περισσότερες σειρές που δεν πληρούν τις προϋποθέσεις, κάτι που είναι συνήθως ένας καλός δείκτης βελτιστοποίησης.

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

11, Επιπλέον

Πεδία πρόσθετων πληροφοριών

Εδώ είναι μερικά κοινά Extra Τα πεδία και οι σημασίες τους:

  1. Χρήση ευρετηρίου

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

    • Υποδεικνύει ότι ο διακομιστής MySQL θα εκτελέσει φιλτράρισμα υπό όρους αφού η μηχανή αποθήκευσης ανακτήσει τις σειρές, αντί να το συμπληρώσει στο ευρετήριο.
  3. Χρήση προσωρινών

    • Υποδεικνύει ότι η MySQL έχει δημιουργήσει έναν προσωρινό πίνακα στη μνήμη για την επεξεργασία του ερωτήματος. Χρησιμοποιείται συνήθως σε λειτουργίες ταξινόμησης ή ερωτήματα που περιέχουν συγκεντρωτικές συναρτήσεις.
  4. Χρήση ταξινόμησης αρχείων

    • Υποδεικνύει ότι η MySQL πραγματοποίησε ταξινόμηση αρχείων για την επεξεργασία του ερωτήματος. Αυτό συμβαίνει συνήθως όταν η ταξινόμηση δεν μπορεί να γίνει χρησιμοποιώντας ένα ευρετήριο.
  5. Το εύρος ελέγχθηκε για κάθε εγγραφή (χάρτης ευρετηρίου: ...)

    • Υποδεικνύει ότι η MySQL χρησιμοποιεί το ευρετήριο για να ελέγξει εάν κάθε εγγραφή βρίσκεται εντός του καθορισμένου εύρους.Αυτό συμβαίνει συνήθως ότανrange Σε τύπο ερωτήματος.
  6. Πλήρης σάρωση με κλειδί NULL

    • Υποδεικνύει ότι η MySQL πραγματοποίησε πλήρη σάρωση πίνακα σε ένα ευρετήριο για να βρει σειρές που ταιριάζουν με τιμές NULL.
  7. Διακριτή

    • Υποδεικνύει ότι η MySQL θα σταματήσει να αναζητά διπλότυπες σειρές αφού βρει την πρώτη σειρά που ταιριάζει.
  8. Χρήση buffer σύνδεσης (Block Nested Loop)

    • Υποδεικνύει ότι η MySQL χρησιμοποιεί την προσωρινή μνήμη σύνδεσης για να χειριστεί τη λειτουργία σύνδεσης Αυτό συμβαίνει συνήθως όταν ο αριθμός των πινάκων σύνδεσης είναι μεγάλος ή το μέγεθος του πίνακα σύνδεσης.
  9. Αδύνατον ΠΟΥ

    • Υποδεικνύει ότι το εργαλείο βελτιστοποίησης MySQL έχει καθορίσει ότι οι συνθήκες στην ρήτρα WHERE δεν μπορούν να ικανοποιηθούν και επομένως δεν θα σαρωθούν σειρές.
  10. Δεν χρησιμοποιούνται τραπέζια

    • Υποδεικνύει ότι το ερώτημα δεν περιλαμβάνει πίνακες, για παράδειγμα SELECT NOW()

εξηγήστε την εμφάνιση της πραγματικής εκτέλεσης

προετοιμασία δεδομένων

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

  1. CREATE TABLE s1 (
  2. id INT AUTO_INCREMENT,
  3. key1 VARCHAR(100),
  4. key2 INT,
  5. key3 VARCHAR(100),
  6. key_part1 VARCHAR(100),
  7. key_part2 VARCHAR(100),
  8. key_part3 VARCHAR(100),
  9. common_field VARCHAR(100),
  10. PRIMARY KEY (id),
  11. INDEX idx_key1 (key1),
  12. UNIQUE INDEX idx_key2 (key2),
  13. INDEX idx_key3 (key3),
  14. INDEX idx_key_part(key_part1, key_part2, key_part3)
  15. ) ENGINE=INNODB CHARSET=utf8;

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

  1. CREATE TABLE s2 (
  2. id INT AUTO_INCREMENT,
  3. key1 VARCHAR(100),
  4. key2 INT,
  5. key3 VARCHAR(100),
  6. key_part1 VARCHAR(100),
  7. key_part2 VARCHAR(100),
  8. key_part3 VARCHAR(100),
  9. common_field VARCHAR(100),
  10. PRIMARY KEY (id),
  11. INDEX idx_key1 (key1),
  12. UNIQUE INDEX idx_key2 (key2),
  13. INDEX idx_key3 (key3),
  14. INDEX idx_key_part(key_part1, key_part2, key_part3)
  15. ) ENGINE=INNODB CHARSET=utf8;

Τα δεδομένα προετοιμάζονται μόνοι σας.

Εκτέλεση δειγμάτων και αποτελέσματα

Απλή ερώτηση

Ερώτημα μεμονωμένου πίνακα

EXPLAIN SELECT * FROM `s1`;

Συμμετοχή στο ερώτημα

EXPLAIN SELECT * FROM `s1` INNER JOIN `s2`;

υποερώτημα

  1. EXPLAIN SELECT * FROM s1 WHERE key1 IN (SELECT key2 FROM s2 WHERE common_field
  2. = 'a');

ειδική οθόνη

εμφάνιση select_type
  1. #Union 去重
  2. EXPLAIN SELECT * FROM `s1` UNION SELECT * FROM `s2`;
  3. #Union 全查
  4. EXPLAIN SELECT * FROM `s1` UNION ALL SELECT * FROM `s2`;

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

κατηγορία τύπου

const (βρείτε το ευρετήριο μία φορά, μόνο μία σειρά αποτελεσμάτων)

EXPLAIN SELECT * FROM s1 WHERE id = 10002;

eq_ref (βρείτε μια σειρά από έναν άλλο πίνακα χρησιμοποιώντας ένα μοναδικό ευρετήριο ή πρωτεύον κλειδί)

EXPLAIN SELECT * FROM s1 INNER JOIN s2 ON s1.id = s2.id;

ref (χρησιμοποιήστε ένα μη μοναδικό ευρετήριο για να βρείτε μία ή περισσότερες σειρές από έναν άλλο πίνακα)

EXPLAIN SELECT * FROM s1 WHERE key1 = 'a';

εύρος (επιστρέφει ένα εύρος σειρών χρησιμοποιώντας ευρετήριο)

EXPLAIN SELECT * FROM s1 WHERE key1 IN ('a', 'b', 'c');

ευρετήριο (σαρώστε πλήρως το ευρετήριο για να βρείτε σειρές)

EXPLAIN SELECT key_part2 FROM s1 WHERE key_part3 = 'a';

Άλλες οθόνες

φιλτραρισμένος δεκαδικός χρόνος

EXPLAIN SELECT * FROM s1 WHERE key1 > 'za' AND common_field = 'la'