phpbar.de logo

Mailinglisten-Archive

=?iso-8859-1?Q?Technisches_=FCber_WHERE?=

Technisches über WHERE

Matthias Lampert mysql_(at)_lists.phpcenter.de
Fri, 22 Jun 2001 10:05:36 +0100


Hallo, allerseits!


Hat jemand von Euch Ahnung, ob es bei der Performance
einer Abfrage einen Unterschied macht, in welcher
Reihenfolge die WHERE-Klauseln geschrieben werden?

Ich sehe zwei Möglichkeiten für den Server, an die Sache 
heranzugehen:

<>  Er geht jede Zeile der Suchmenge durch und prüft auf
    jeder Zeile alle Suchkriterien durch.

<>  Er arbeitet die Kriterien nacheinander in der gesamten
    Suchmenge ab und siebt sie iterativ um die gefundenen
    Elemente für das nächste Kriterium aus.


Soll heißen:  Ich suche nach dem Autor Peter Schulze und weiß,
dass in seinem Buch irgendwo der Satz  ,,Das ist die Rache für
meinen Bruder!`` steht.  Nehmen wir an, in der DB mit Millionen
von Büchern wären nicht allein die Buchdaten, sondern auch der 
Textbestand der Bücher samt ihrem Inhalt verzeichnet.  Würde es 
für MySQL einen Unterschied machen, wenn ich die Abfrage so 
formuliere

... WHERE authorname = 'Schulze'  AND
          authorfirstname =  'Peter'  AND
          words LIKE "%Das ist die Rache für meinen Bruder!%"

oder so:
    
    WHERE words LIKE "%Das ist die Rache für meinen Bruder!%"
         AND authorname = 'Schulze'
         AND authorfirstname = 'Peter'

???


Vielen Dank sagt

-- 

Matthias Lampert, Hamburg

---
!!NEU!!
Fragen und Antworten zu MySQL und dieser Liste unter
-->>  http://www.4t2.com/mysql 



php::bar PHP Wiki   -   Listenarchive