Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Αν απο την query περιμένεις να επιστρέψει μόνο ένα row ναι. 

 

Γιατί αν δεν βάλεις το LIMIT θα συνεχίσει να ψάχνει και για άλλο row που προφανώς δεν θα υπάρχει.

 

Ξέχασες να αναφέρεις κάτι σημαντικό ή πιστεύεις ότι αν βάλω LIMIT στο query που ψάχνει με βάση π.χ. το PK (γιατί αλλιώς είναι λίγο δύσκολο να περιμένεις από πριν ότι θα επιστρέψει μόνο ένα) θα πηγαίνει πιο γρήγορα;

  • Like 1
Δημοσ.

Δηλαδή στο 99% των περιπτώσεων όπου ξέρεις από πριν πόσα rows θα πάρεις.

 

Με αυτό το δεδομένο πιστεύεις ακόμα ότι η μονολεκτική απάντηση στην ερώτηση του zynif είναι "ναι"; More like "σε κάποιες πολύ συγκεκριμένες και σπάνιες περιπτώσεις ναι".

Δημοσ.

O zynif ρώτησε κάτι, απαντησα και με διόρθωσες, και βγαλαμε το εξης:

 

Ναι η LIMIT 1 θα κάνει την query πιο γρήγορη όταν περιμένεις απο πριν 1 row και όταν δεν ψάχνει πάνω σε primary key ή σε unique key.

 

Τώρα γιατί σκαλίζουμε το πόσο σπάνιο θα είναι ή το ποσο σπάνιο δεν θα είναι ή τι μπορεί να είναι, τι μας ενδιαφέρει? Η απάντηση είναι σωστή? Τερμα. 

 

Άντε αν θες και καλύτερα: 

 

Ναι η LIMIT 1 θα κάνει την query πιο γρήγορη όταν περιμένεις απο πριν 1 row και όταν δεν ψάχνει πάνω σε primary key ή σε unique key. Όμως είναι σπάνιο να μήν ψάχνεις πάνω σε primary/unique key και να ξέρεις απο πριν οτι θα γυρίσει 1 row.

  • Like 1
Δημοσ.

Sorry που σε έπρηξα, λάθος μου.

 

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

 

Στο απο πάνω post τα λες τέλεια όσο μου επιτρέπουν οι δικές μου γνώσεις να κρίνω, case closed.

Δημοσ.

 

Ναι η LIMIT 1 θα κάνει την query πιο γρήγορη όταν περιμένεις απο πριν 1 row και όταν δεν ψάχνει πάνω σε primary key ή σε unique key. Όμως είναι σπάνιο να μήν ψάχνεις πάνω σε primary/unique key και να ξέρεις απο πριν οτι θα γυρίσει 1 row.

 

Το να μην εκτελέσεις το query θα κάνει το execution ταχύτερο όταν από πριν δεν περιμένεις κάτι από το rdbms. Όμως είναι σπάνιο να χρησιμοποιείς rdbms και να ξέρεις από πριν ότι δεν θες τίποτα από αυτό.

 

Νομίζω πήγα το optimization σου στο επόμενο level, σβήστε τα queries :)

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα

  • Δημιουργία νέου...